3
respostas

PROBLEMA NA RECEITA YAN

Meu código está em um loop infinito aparecendo "Ingrediente 2". Eu coloco a opção para "3 ingredientes". coloco o primeiro, ok. No segundo, eu coloco e ele trava em um loop eterno. Pedindo sempre o 2 ingrediente. Já vi e revi meu código e não aparece erro no console. T.T

Receitas do Bruno

3 respostas

Cadê o código manin?

Perdão, eu coloquei o código mas ele nao apareceu. Segue:

Receitas do Bruno

<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 existe = false;                                                    

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

        if(ingredientes[posicao] == ingredientes){                        

            existe = true;                                            
            break;                                                        
        }
    }

    if( existe == false){                        

        ingredientes.push(ingrediente);            
        contador++;                                
    }
}

console.log(ingredientes);                        

E ai brunão, achei um erro aqui e funcionou, já tá bem legal indico colocar uma mensagem avisando que o ingrediente está repetido para quando o usuário errar .

if(ingredientes[posicao] == ingredientes){                        
                //CERTO SERIA >> ingredientes[posicao] == ingrediente
                //Você quer comparar com a variavel ingrediente e não com ingredientes que seria uma array por isso o cód não sabe o que fazer e buga
                //Basta tirar que vai funcionar !
            existe = true;                                            
            break;                                                        
        }