Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
12
respostas

Console .log não está imprimindo peso inválido

Por mais que eu escreva o código igualzinho ao do instrutor, o console .log não está imprimindo o peso inválido.

var titulo = document.querySelector(".titulo");
        titulo.textContent = "Aparecida Nutricionista";


var paciente = document.querySelector("#primeiro-paciente");
var tdPeso = paciente.querySelector(".info-peso");

var peso = tdPeso.textContent;

var tdAltura = paciente.querySelector(".info-altura");
var altura = tdAltura.textContent;

var tdImc = paciente.querySelector(".info-imc");

if(peso < 0 || peso > 1000) {
    console.log("Peso inválido");
}
var imc = peso / (altura * altura); // 100/ 2.0 ** 2.00 = 100 / 4 = 25

tdImc.textContent = imc;
12 respostas

Oi, Gabriel, tudo bem?

No html, você está alterando os valores de altura e/ou peso para que a mensagem apareça na tela do console do navegador? No caso, você teria que mudar o valor de peso com id primeiro-paciente para, por exemplo, 30000, que está fora de valor de peso da verificação. Testa e me fala se obteve a mensagem no console.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Sim , eu fiz isso. Deixei o valor do peso como -100.

Oi, Gabriel, tudo bem?

Eu testei o seu código e a mensagem informando sobre o peso inválido é mostrado no console. No seu arquivo index.html tem a id primeiro-paciente definida para que possa capturar os valores e fazer a verificação?

Tem sim. O console.log até imprime o peso, altura e imc. Mas não considera valor inválido.

Eu vou revisar todo o código aqui de novo pra ver o que deu

Está tudo certo, já até testei em outro navegador e dá no mesmo. O js faz o calculo do IMC e me mostra os valores de peso e altura normalmente, mas não faz a leitura de peso invalido. Não entendo...

Olha a ironia, o console lê a altura inválida, mas não lê o peso inválido. Detalhe. Ele mostra altura inválida sem eu ter digitado altura. Daí quando digita altura mostra normalmente, com a mensagem "Altura inválida" acima.

solução!

Bom, copiei o código de altura inválida e alterei os nomes pra peso. E funcionou, mas aparece a mensagem no campo de user message, e não quando digito "peso". Pelo jeito era a indexação e a forma do navegador mostrar a mensagem. Deve ter mudado com as atualizações.

De qualquer forma, obrigado ;)