Segue a função que retorna um objeto paciente
:
function obtemPacienteDoFormulario(form) {
var paciente = {
"nome": form.nome.value,
"peso": form.peso.value,
"altura": form.altura.value,
"gordura": form.gordura.value,
"imc": calculaImc(form.peso.value, form.altura.value)
};
return paciente;
}
A minha dúvida é a seguinte: por que é necessário utilizar form.peso.value
e form.altura.value
como parâmetros para a função calculaImc
?
Não seria bem mais simples utilizar as próprias propriedades do objeto? Algo como:
"imc": calculaImc(peso, altura)
ou até:
"imc": calculaImc(this.peso, this.altura)
Entretanto isto não é possível, sabem explicar por quê? Há alguma outra maneira de fazer isto com um objeto literal?