1
resposta

Utilização do Else na última linha do código

A última linha do código do exercício divulgado na page da Alura não faz sentido ter o "else", uma vez que já existem validações anteriores ("if´s") para as variáveis "peso" e "altura". Da forma que o código está construído, sempre que um dos valores for inválido, sempre irá entrar no "else" mas o corretor seria manter o texto dos "if´s".

Abaixo texto do divulgado no page do curso:

"O seu código final deve estar assim:

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

var tdAltura = paciente.querySelector(".info-altura"); var tdPeso = paciente.querySelector(".info-peso"); var tdImc = paciente.querySelector(".info-imc");

var altura = tdAltura.textContent; var peso = tdPeso.textContent;

var alturaEhValida = true; var pesoEhValido = true;

if (peso <= 0 || peso > 1000) { console.log("Peso inválido!"); tdPeso.textContent = "Peso inválido!"; pesoEhValido = false;

}

if (altura <= 0 || altura >= 3) { console.log("Altura inválida!"); tdAltura.textContent = "Altura inválida!"; alturaEhValida = false; }

if (alturaEhValida && pesoEhValido) {

var imc = peso / (altura * altura);
tdImc.textContent = imc;    

} else { tdImc.textContent = "Altura e/ou peso inválidos!" }"

1 resposta

Alan,

as duas validações de peso e altura são feitas para disponibilizar o peso ou a altura ( ou erro) nos respectivos campos. A última validação é para disponibilizar informação no campo do imc (imc ou erro).

Há outras maneiras de se disponibilizar informação de erro no campo do imc diferentes desta.

Esta pode não ser a melhor maneira, mas acho que a idéia era só ser didático.