Codifiquei de uma forma diferente da proposta pelo instrutor. Ao invés de ser solicitado ao usuário a quantidade de ingredientes e, em seguida, fazê-lo os inserir "em sequência", fiz com que o usuário possa digitar um ingrediente por vez, a partir de um input e um botão, já aproveitando a estrutura dos exercícios anteriores. Além disso, faço a validação do valor inserido pelo usuário, devendo ser um valor não numérico (isNaN) e disponibilizo um segundo botão que exibe em um "alert" os itens já existentes na lista.
<meta charset="UTF-8" />
<input />
<button>Adicionar ingrediente</button>
<button onclick="(alert(ingredientes))">Mostrar Lista</button>
<script>
var ingredientes = [];
var input = document.querySelector("input");
input.focus();
var button = document.querySelector("button");
button.onclick = verificaIngrediente;
function insereIngrediente(ing) {
var repetido = false;
for (var posicao = 0; posicao <= ingredientes.length; posicao++) {
if (ingredientes[posicao] == ing) {
alert("Ingrediente já existente na lista!");
repetido = true;
break;
}
}
if (repetido == false) {
ingredientes.push(ing);
alert("Ingrediente " + ing + " inserido!");
}
console.log(ingredientes);
}
function verificaIngrediente() {
var x = input.value;
if (isNaN(x)) {
insereIngrediente(x);
} else {
alert("Digite corretamente o ingrediente!");
}
input.value = "";
input.focus();
}
</script>