Pessoal,
var titulo = document.querySelector(".titulo");
titulo.textContent = "Aparecida Nutricionista";
var paciente = document.querySelector("#primeiro-paciente");
var pacientes = document.querySelectorAll(".paciente");
for (var i = 0; i < pacientes.length; i++) {
var paciente = pacientes [i];
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");
// Validação
var pesoEhValido = true;
var alturaEhValida = true;
if (peso < 0 || peso > 200) {
pesoEhValido = false;
tdImc.textContent = "Peso inválido";
paciente.classList.add("paciente-invalido") ;
}
if (altura < 0 || altura >2.50){
alturaEhValida = false;
tdImc.textContent = "Altura inválida";
paciente.classList.add("paciente-invalido");
}
if (pesoEhValido && alturaEhValida) {
var imc = peso / (altura * altura);
tdImc.textContent = imc;
}
// Fim da validação
}
function calculaImc(peso, altura) {
var imc = 0;
imc = peso / (altura * altura);
return imc.toFixed(2);
}
Estou passando o toFixed(2) na posição indicada no exercício, porém, os números na tabela não estão arredondados. Só consigo fazer eles funcionarem se o toFixed for passado dentro da validação, dessa forma:
if (pesoEhValido && alturaEhValida) {
var imc = peso / (altura * altura);
tdImc.textContent = imc.toFixed(2);
}
Se alguém puder ajudar, serei grato.