3
respostas

Porque a variavel destinoExiste retorna false no console.log se o valor era true antes do break

let contador = 0;
let destinoExiste = false;
while (contador < 3) {
    if (listaDeDestinos[contador] == destino) {
        let destinoExiste = true;
        break;
    }
    contador += 1;
}
console.log("Destino Existe: ",destinoExiste);
3 respostas

Se o seu código é só o trecho que você colocou, então ele não está executando o IF porque não consegue identificar o que seria listaDeDestinos e destino. Estas variáveis não foram declaradas.

Para poder dizer com certeza você tem que colocar todo o código.

Boa tarde,

Pedro, tudo bom? Seria legal colocar um pouco mais do seu código anterior, porque não é possível saber qual é sua lista de destinos bem como qual o destino que está declarado dentro da sua variável. O que pode acontecer às vezes é que você pode ter só digitado a palavra de maneira incorreta dentro da lista ou do destino e, quando existe alguma comparação, se todas as letras não estão exatamente iguais e na mesma ordem (inclusive maiúsculo e minúsculo, já que o JavaScript é Case Sensitive) ele não reconhece como igual, acho que vale a pena dar uma checada ou então colocar o restante do código para podermos dar uma olhada melhor. Outra coisa que reparei é que você dentro do seu While alterou o valor da variável destino da seguinte maneira:

let destinoExiste = true;

Entretanto, uma vez que você já tenha declarado essa variável do tipo "Let" anteriormente, você não precisa de novo usar "Let" para fazer a alteração do valor atribuído à mesma:

destinoExiste = true;

Espero ter ajudado de alguma forma!

Bons Estudos!

Você declarou a variável destinoExiste duas vezes.

if (listaDeDestinos[contador] == destino) { let destinoExiste = true; break; }

Solução if (listaDeDestinos[contador] == destino) { destinoExiste = true; (tirar o let) break; }

essa variável que esta dentro do if ela só pode ser acessada dentro do encadeamento do if, esse também é o fato de não te dado erro na declaração de duas variáveis com o mesmo nome.