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

var = posicao e existe == false

Olá pessoal, to iniciando agora meus estudos aqui na Alura e fiquei em dúvida nesse exercício:

<meta charset="UTF-8">

<h1>Receitas do Yan</h1>

<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] == ingrediente) {

                existe = true;
                break;
            }
        }

        if( existe == false) {

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

    console.log(ingredientes);
</script>

1º pra que serve a variável posição? Ela define o que no meu código? E 2º eu entendi o funcionamento do var existe = false no começo do código. O que eu não entendi é porque eu tenho que repetir if(existe == false) no código, e ainda mandar falar que o existe é IGUAL(==) a false. O que isso vai "fazer" no código?

Desculpa se for ingênuo, e obrigado a Alura pelo ótimo curso!

1 resposta
solução!

João Victor,

a variável 'posicao' define o índice de cada valor armazenado na variável array 'ingredientes'. Por exemplo, se em ingredientes = [arroz, feijao, oleo]:

  • o índice de arroz é zero (ingredientes[0] é arroz);
  • feijao é 1 (ingredientes[1] é feijao);
  • e oleo é 2 ingredientes[2] é oleo).
  • ingredientes.length é igual a 3 neste caso.

  • var existe = false significa que você está atribuindo/armazenando na variável existe o valor false;
  • if(existe == false) significa que você está verificando uma condição: "se a variável existe for igual a false".

= é diferente de ==.

= significa de você está atribuindo/armazenando valor em; == significa que você está comparando se um valor é igual a algo, ou igual a outro.