Olá. Meu objeto "paciente" está aparecendo de forma estranha na função "montaTr(paciente)" linha 32. O console.log(paciente) dá linha 33 mostra algo muito estranho no console: {nome: "Nelsinho", peso: "1", altura: "1", gordura: "1", imc: "1.00"} form.js:36 1.00 form.js:36 undefined
Antes de "paciente" entrar na função "montaTr(paciente)" na linha 10, ele se comporta normalmente: {nome: "Nelsinho", peso: "1", altura: "1", gordura: "1", imc: "1.00"}
Não consigo entender porque depois de entrar na função "montaTr(paciente)" como argumento ele se transforma em um objeto e mais duas linhas de informação, como mostrado antes.
Segue meu código form.js:
var boataoAdicionar = document.querySelector("#adicionar-paciente");
boataoAdicionar.addEventListener("click", function(event){
event.preventDefault();
var form = document.querySelector("#form-adiciona");
var paciente = obtemPacienteDoFormulario(form);
var pacienteTr = montaTr(paciente);
var tabela = document.querySelector("#tabela-pacientes");
tabela.appendChild(pacienteTr);
})
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;
}
function montaTr(paciente) {
console.log(paciente);
var pacienteTr = document.createElement("tr");
pacienteTr.classList.add("paciente");
// var nomeTd = document.createElement("td");
// nomeTd.classList.add("info-nome");
// nomeTd.textContent = paciente.nome;
var nomeTd = montaTd(paciente.nome, "info-nome");
var pesoTd = montaTd(paciente.peso, "info-peso");
var alturaTd = montaTd(paciente.altura, "info-altura");
var gorduraTd = montaTd(paciente.gordura, "info-gordura");
var imcTd = montaTr(paciente.imc, "info-imc");
pacienteTr.appendChild(nomeTd);
pacienteTr.appendChild(pesoTd);
pacienteTr.appendChild(alturaTd);
pacienteTr.appendChild(gorduraTd);
pacienteTr.appendChild(imcTd);
return pacienteTr;
}
function montaTd(dado, classe) {
var td = document.createElement("td");
td.textContent = dado;
td.classList.add(classe);
return td;
}