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

function validaPaciente

O melhor neste caso nao seria chamar a funcao validaPaciente(paciente) antes do var pacienteTr = montaTr(paciente), porque economizamos o montaTr no caso de que a altura ou peso nao sejam validos.

var botaoAdicionar = document.querySelector("#adicionar-paciente");
botaoAdicionar.addEventListener("click", function(event) {
    event.preventDefault();

    var form = document.querySelector("#form-adiciona");
    var paciente = obtemPacienteDoFormulario(form);
    var pacienteTr = montaTr(paciente);

    if (!validaPaciente(paciente)) {
        console.log("Paciente inválido");
    }

    var tabela = document.querySelector("#tabela-pacientes");

    tabela.appendChild(pacienteTr);

    form.reset();

});
1 resposta
solução!

Oi Janile, tudo bom?

Acredito que, nesse caso, não faça diferença porque o código de validação não para a execução do bloco. Ou seja, se jogassemos a linha:

    var pacienteTr = montaTr(paciente);

pra baixo da validação, ela só seria executada depois do console.log. Para que a gente realmente economize esse bloco, seria necessario parar o bloco de execução. Algo como:

var botaoAdicionar = document.querySelector("#adicionar-paciente");
botaoAdicionar.addEventListener("click", function(event) {
    event.preventDefault();

    var form = document.querySelector("#form-adiciona");
    var paciente = obtemPacienteDoFormulario(form);
    var pacienteTr = montaTr(paciente);

    if (!validaPaciente(paciente)) {
        console.log("Paciente inválido");

        return;
    }

    var tabela = document.querySelector("#tabela-pacientes");

    tabela.appendChild(pacienteTr);

    form.reset();

});