//calcula-imc.js
var pacientes = document.getElementsByClassName("paciente");
for (var i = pacientes.length - 1; i >= 0; i--) {
var pacienteTr = pacientes[i];
var paciente = {
peso : pacienteTr.getElementsByClassName("info-peso")[0].textContent,
altura : pacienteTr.getElementsByClassName("info-altura")[0].textContent,
pegaImc : function(){
if(this.altura != 0){
return this.peso / (this.altura * this.altura);
} else{
console.log("Não posso executar uma divisão por 0!");
}
}
};
var imc = paciente.pegaImc;
pacienteTr.getElementsByClassName("info-imc")[0].textContent = imc;
}
Na coluna IMC da minha página index.html, ao invés de aparecer o valor que a função deveria retornar aparece:
"function(){ if(this.altura != 0){ return this.peso / (this.altura * this.altura); } else{ console.log("Não posso executar uma divisão por 0!"); } }"
Fiz o teste no Mozilla Firefox 45.0.1 e no Internet Explorer 11.