Bom dia/boa tarde/boa noite.
Conforme mencionado pelo professor, separar algumas funcionalidades do seu código é bom pois fica mais legível. Na parte de calcular o IMC, eu criei duas funções a mais(além da que calcula o imc): uma para verificar o peso, e outra para verificar a altura.
O código está funcionando, beleza. A Minha dúvida é a seguinte: O meu código está bom? Fiz da forma correta?(principalmente a parte de adicionar a classe ".paciente-invalido"). O que eu poderia alterar?
Segue o código:
pacientes = document.querySelectorAll(".paciente");
for(n = 0; n < pacientes.length; n++){
paciente = pacientes[n];
var qtPeso = paciente.querySelector(".info-peso").textContent;
var qtAltura = paciente.querySelector(".info-altura").textContent;
var imc = paciente.querySelector(".info-imc");
imc.textContent = calculaImc(qtPeso, qtAltura);
var pesoInvalido = verificaPeso(qtPeso, imc, paciente);
var alturaInvalida = verificaAltura(qtAltura, imc, paciente);
}
function calculaImc(peso, altura){
var imc = peso / (altura * altura);
return imc.toFixed(2);
}
function verificaPeso(peso, imc, paciente){
if (peso <= 0 || peso > 200){
imc.textContent = "Peso inválido";
paciente.classList.add("paciente-invalido");
}
return imc;
}
function verificaAltura(altura, imc, paciente){
if (altura <= 0 || altura > 3.0){
imc.textContent = "Altura Inválida";
paciente.classList.add("paciente-invalido");
}
return imc;
}
Agradeço a atenção. Abrçs!