Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Verificação entre True e False no IF

Olá, bom dia! Fiquei com dúvida em relação ao condicional a baixo, Percebi que ele funciona, mas não entendi exatamente a lógica.

As variáveis são declaradas e recebem o valor True, mas no If não fica explicita a pergunta " se pesoEhValido E alturaEhValida for verdadeiro"

O condicional "If" vai sempre sempre pressupor esse "True" nas variáveis?

      var pesoEhValido = true;
       var alturaEhValida = true;

if (alturaEhValida && pesoEhValido) {
    var imc = peso / (altura * altura);
     tdImc.textContent = imc;
    }

Na minha cabeça faz mais sentido :

if (alturaEhValida = true && pesoEhValido = true ) {
    var imc = peso / (altura * altura);
     tdImc.textContent = imc;
    }
2 respostas
solução!

Fala Gabriel, beleza?

A estrutura condicional if é booleana.

Ou seja, dentro dos ( ), precisamos colocar algo que nos retorne true ou false.

Sempre que o resultado dessa comparação resulta em TRUE, ele entra na condição e executa o código, caso seja FALSE, ele não executa o bloco, podendo cair no bloco de um ELSE.

Nada te impede de fazer como você acha mais claro, (lembre-se que são dois iguais == )

if (alturaEhValida == true && pesoEhValido == true )

Mas repare que fica redundante, já que na realidade está

if (true == true && true == true )

Dito isso, se sabemos que nossa variável pode assumir valores TRUE ou FALSE, não é necessário compararmos, entendeu?

Além disso, o operador lógico &&, restringe a entrada no bloco do if apenas quando alturaEhValida e pesoEhValido são verdadeiros.

Espero que tenha conseguido esclarecer sua dúvida.

Abraços!

Fala Gabriel!

Fico feliz que tenha solucionado sua dúvida.

Estou fechando o tópico, caso tenha mais dúvidas, basta criar um novo!

Abraços.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software