Olá, Ana, tudo bem?
O problema é que dentro do bloco for
deveria estar quase todo o código, mas está apenas assim:
for (var i = 0; i < pacientes.length; i++) {
console.log(pacientes);
}
O restante do código ficou fora do for
. Por conta disso, quando o comando var paciente = pacientes[i];
é executado, o código não reconhece a variável i
, e a variável paciente
fica com valor undefined
.
Para corrigir, basta colocar o restante do código antes da chave de fechamento }
do for
, assim:
for (var i = 0; i < pacientes.length; i++) {
console.log(pacientes);
var paciente = pacientes[i];
//hashtag é pra id ,ponto é pra class
var inpeso1 = paciente.querySelector(".info-peso");
var peso = inpeso1.textContent;
var altura1 = paciente.querySelector(".info-altura");
var altura = altura1.textContent;
var ttimc = paciente.querySelector(".info-imc");
var alturavalida = true;
var pesovalid = true;
if (pesovalid <= 0 || pesovalid >= 1000) {
console.log("peso invalido");
pesovalid = false;
ttimc.textContent = ("peso inválido");
}
if (altura == 0 || altura >= 3.00) {
console.log("altura inválida");
alturavalida = false;
ttimc.textContent = ("imc invalido");
paciente.style.color = "red";
}
if (alturavalida && pesovalid) {
//calcula o imc
var imc = peso / (altura * altura);
ttimc.textContent = imc.toFixed(2);
}
}
E agora só uma dica: quando você for escrever código aqui no fórum, você deve deixá-lo dentro de um bloco de código, senão ele poderá não ficar bem formatado. O bloco de código começa com três crases seguidas e termina com mais três crases seguidas, assim:
Por exemplo, um código HTML:
Note que você pode escrever o nome da linguagem junto com as três primeiras crases para realçar o código!
Você também pode clicar no ícone </>
na barra de ícones para gerar um bloco de código.
Se você tiver qualquer dúvida estaremos aqui para te auxiliar! Bons estudos! :)
Espero ter ajudado! Se tiver mais dúvidas ou dificuldades, ficaremos felizes em te responder. Abraços e bons estudos! :)
Caso esta resposta tenha resolvido sua dúvida, por favor, marque como solucionada ✓. Bons Estudos!