Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Calculo do Imc dentro do Objecto

`function obtemPacienteDoFormulario(form) {

var paciente = {
    nome: form.nome.value,
    peso: form.peso.value,
    altura: form.altura.value,
    gordura: form.gordura.value,
    **imc: calculaImc(form.altura.value, form.peso.value)**
}

} `

Bem para mim não ficou explicito porque da necessidade de no método termos que passar os argumentos dessa forma(form.altura.value, form.peso.value)ao invés de simplesmente altura e peso uma vez que eles já foram atribuidos os valores desse modo :

peso: form.peso.value, altura: form.altura.value,

Quem poder me esclarecer desde já muito Obrigado.

1 resposta
solução!

Os valores já foram atribuídos sim, mas o JavaScript ainda não associa o nome "peso" ao atributo peso do objeto. Para descobrir o que acontece faça o seguinte teste:

Mude essa linha do imc para:

imc: calcularImc(console.log(peso), console.log(altura))

Se funcionar como você deseja tem que aparecer os valores do peso e da altura, porém, provavelmente o que irá aparecer são os campos peso e altura do formulário no console, o que não tem nada haver. É por isso que o correto é colocar dessa forma que foi mostrada na aula.