Abaixo está a minha resolução da atividade proposta:
Abaixo está a minha resolução da atividade proposta:
Inicialmente temos:
const dadosGerais = {
nome: "Declan Rice",
idade: 23,
email: "drice@email.com",
identicacao: "Alpha01",
funcao: "futebolista",
peso: 80,
altura:1.85,
calcularIMC:function(){
return (this.peso/(Math.pow(this.altura,2)))
}
}
Agora a adição de uma nova função
const relatorioGeral = function(){
return `
O paciente ${this.nome} de ${this.idade} anos de idade,
possui ${this.altura} de altura e ${this.peso} kg,
contabilizando um IMC de ${this.calcularIMC()}
`
};
const paciente = {dadosGerais, relatorioGeral } console.log(paciente) Se fizermos o console sem os "..." ficariamos assim:
{
dadosGerais: {
nome: 'Declan Rice',
idade: 23,
email: 'drice@email.com',
identicacao: 'Alpha01',
funcao: 'futebolista',
peso: 80,
altura: 1.85,
calcularIMC: [Function: calcularIMC]
},
relatorioGeral: [Function: relatorioGeral]
}
Mas se deixássemos desse jeito não conseguiríamos chamar a função "paciente.relatorioGeral()" Logo, precisamos usar o spread, ficando assim:
const paciente = {...dadosGerais, relatorioGeral } console.log(paciente) console.log(paciente.relatorioGeral())
E poderemos usar a função "relatorioGeral()"
/*
O paciente Declan Rice de 23 anos de idade,
possui 1.85 de altura e 80 kg,
contabilizando um IMC de 23.37472607742878
*/