Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Vira um loop infinito

Eu terminei o código porém ele esta entrando em um loop que não estou compreendendo da onde que ele tirou esta ideia sendo que há limitadores para ele e ele continua entrando em loop

<meta charset="UTF-8">

<h1>Receitas do Yan</h1>

<script>
    var ingredientes = [];

    var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?"));

    var contador = 1;

    var    achou = false;

            while( contador <= quantidade) {

                var ingrediente = prompt("Informe o ingrediente " + contador);

                   for(var posicao = 0; posicao < ingredientes.length; posicao++) {

                    if(ingrediente !== ingredientes[posicao]) {

                        ingredientes.push(ingrediente);

                           contador++;

                    }

                    else {

                        alert("Ingrediente Repetido");

                        achou = true;

                        break;
                     }

                 }

             }        


    console.log(ingredientes);
</script>
1 resposta
solução!

Boa noite, Tassiano! Como vai?

O problema está na declaração do seu for!

for(var posicao = 0; posicao < ingredientes.length; posicao++) {
     // restante do código omitido ...
}

Repare que ingredientes.length é 0 inicialmente, então o seu código nunca irá entrar no for, fazendo com que o loop while seja infinito.

Pegou a ideia?

Grande abraço e bons estudos!