1
resposta

Dúvida sobre a condição if na condição "variável" == true

Olá Pessoa, Bom dia! Por favor, podem me ajudar com uma dúvida no código? Estou na aula de operadores lógicos encadeados, e surgiu uma dúvida na condição abaixo:

console.log("Embarque: \n\n") if(idadeComprador >=18 && temPassagemComprada){ console.log("Você pode embarcar"); }else{ console.log("Você não pode embarcar") }

Nessa condição do if o professor não usou na condição a variavel (temPassagemComprada == true ).

Ou a condição já entende por padrão que sempre deve ser true ? Porque no mesmo código ele usou a outra condição if com a variável estaAcompanhada == true, como abaixo:

if (idadeComprador >= 18 || estaAcompanhada == true) { console.log("Boa Viagem"); listaDeDestinos.splice(1, 1); //removendo item

Ai surgiu a dúvida deve usar na condição "variável == true" ou não é necessário?

1 resposta

Não é necessário comparar um booleano dessa forma, você pode simplesmente fazer if (variavel).

Para entender melhor, vamos usar o seu código como exemplo:

console.log("Embarque: \n\n");
if(idadeComprador >=18 && temPassagemComprada){
    console.log("Você pode embarcar");
} else console.log("Você não pode embarcar");

Em algum ponto do seu código você terá obtido o valor da variável temPassagemComprada, mas vamos imaginar que você fez isso manualmente em dois casos: true e false.

True

let temPassagemComprada = true;

False

let temPassagemComprada = false;

Quando o seu código for interpretado, a variável vai assumir o valor que foi definido para ela, levando a duas possibilidades:

True

console.log("Embarque: \n\n");
if(idadeComprador >=18 && true){
    console.log("Você pode embarcar");
} else console.log("Você não pode embarcar");

Que entrará no if caso o valor da variável idadeComprador for maior ou igual que 18.

False

console.log("Embarque: \n\n");
if(idadeComprador >=18 && false){
    console.log("Você pode embarcar");
} else console.log("Você não pode embarcar");

Que nunca entrará no if, pois uma das condições dele não foi satisfeita.

Tabela Verdade

idadeComprador >=18temPassagemCompradaidadeComprador >=18 && temPassagemComprada
falsefalsefalse
falsetruefalse
truefalsefalse
truetruetrue