Depois que criei a função percorreArray parou de funcionar acho que não intendi muito bem essa questão da função dentro de outra função, segue o codigo:
function montaPaciente (trPaciente){
var nome = trPaciente.getElementsByClassName("info-nome")[0].textContent;
var peso = trPaciente.getElementsByClassName("info-peso")[0].textContent;
var altura = trPaciente.getElementsByClassName("info-altura")[0].textContent;
var pacienteAtual = {
nome: nome,
peso: peso,
altura: altura,
pegaImc: function()
{
if(this.altura != 0)
{
var imc = this.peso / (this.altura * this.altura);
return imc;
}
else
{
console.log("Nao executado porque altura e igual a zero");
}
}
}
return pacienteAtual;
}
function percorreArray(nossosTrs, comportamento)
{
for( var i = 0; i <= pacientesTrs.length-1; i++)
{
var trPacienteAtual = nossosTrs[i];
comportamento(trPacienteAtual)
}
}
var pacientesTrs = document.getElementsByClassName("paciente");
var trAtual = pacientesTrs[i];
percorreArray(pacientesTrs, function(trAtual)
{
var paciente = montaPaciente(trAtual);
var imcPaciente = paciente.pegaImc();
var trImc = trAtual.getElementsByClassName("info-imc")[0];
trImc.textContent = imcPaciente;
console.log(imcPaciente);
});