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

Dúvida sobre o operador de negação ( ! )

A variável pesoEhValido pode receber um valor true ou false da minha função validaPeso.

var pesoEhValido = validaPeso(peso);

O meu problema de entender fica dentro desse if, se eu receber um valor true o if (!pesoEhValido) vai transformar meu true em false e vai rodar o código do mesmo jeito?

    if (!pesoEhValido) {
        console.log("Peso inválido!");
        pesoEhValido = false;
        tdImc.textContent = "Peso inválido";
        paciente.classList.add("paciente-invalido");
    }
function validaPeso(peso){

    if(peso >= 0 && peso < 1000){

        return true;
    }
    else{

        return false;
    }
}
1 resposta
solução!

Olá José, tudo certo?

se pesoEhvalido = true, e o if é apenas para !pesoEhValido (no caso pesoEhValido = false) o consição do if não será feita, já que o seu if é apenas para peso válido.

O if por si só não muda o valor de uma variável, apenas avalia se ela atende determinada condição.

Espero ter ajudado!