Olá pessoal. Fiz um pouco diferente do exemplo do curso, no meu código quero que quando o ingrediente ja exista, seja feita a pergunta de novo e antes imprima um alerta de que ja existe. Esta funcionando em parte, percebi que ele só esta fazendo a comparação com o primeiro ingrediente, por exemplo, se coloco no ingrediente 1 "sal", no 2 "açucar" e no 3 "açucar", ele não mostra que deu erro, mas se eu coloco no ingrediente 1 "sal", no 2 "açucar" e no 3 "sal", mostra que ja existe e pergunta novamente, como deve ser. Agradeço se alguém puder me ajudar.
Segue meu código abaixo:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var ingredientes = [];
var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?"));
var contador = 1;
while( contador <= quantidade) {
var ingrediente = prompt("Informe o ingrediente " + contador);
var tem = false;
if(contador == 1){
ingredientes.push(ingrediente);
tem = true;
}
if(tem == false){
for(var posicao = 0; posicao < ingredientes.length; posicao++){
if(ingrediente !== ingredientes[posicao]){
ingredientes.push(ingrediente);
break;
} else if (ingrediente == ingredientes[posicao]){
alert("este ingrediente ja existe");
contador = contador - 1;
}
}
}
contador++;
}
console.log(ingredientes);
</script>
</body>
</html>