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

Comando para sair de funções

Olá pessoal! Em situações como no código abaixo:

if(!validaPaciente(paciente)) {

        console.log("Peso ou altura inválidos!");
        return;

    } else {

        let pacienteTr = document.createElement("tr");

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

        tabelaPacientes.appendChild(pacienteTr);
        pacienteTr.appendChild(criaTd(paciente.nome,"info-nome"));
        pacienteTr.appendChild(criaTd(paciente.peso,"info-peso"));
        pacienteTr.appendChild(criaTd(paciente.altura,"info-altura"));
        pacienteTr.appendChild(criaTd(paciente.gordura,"info-gordura"));
        pacienteTr.appendChild(criaTd(paciente.imc,"info-imc"));

        form.reset();

    }

Em que eu desejo sair do bloco de uma função no caso de um if retornar falso, ao invés de utilizar o return "vazio", poderia utilizar também o comando break que aprendemos em Lógica de Programação? Ou o break seria só pra sair de estruturas de repetição?

Obrigado!

1 resposta
solução!

Oi, Leonardo, tudo bem?

Dentro da estrutura if, como no exemplo que você nos trouxe, quando entra no else, depois ele encerra, já que não há outra estrutura condição a ser lida e você só nos deu uma condição se valida paciente for invalido entra no aviso do console.log, caso não, adicione os valores na tabela. Nesse caso o break não é indicado, segundo a definição da documentação.

O uso do break é indicado em estruturas de repetição, loops; o que ele faz é encerrar a repetição atual, como nesse exemplo:

let imprima =" ";

for (let i = 0; i < 10; i++) {
  if (i === 3) { 
    break; 
    }
  imprima += "O numero é " + i + "<br>";
} 

(você pode testar o código acima no console do navegador)

Veja que acima temos um for que tem uma condição que o indice i seja incrementado por dez vezes, mas há dentro desse loop uma condição, quando o índice bater a terceira, é para parar e imprimir os valores na tela.

Pegou a ideia? Caso tenha alguma dúvida é só falar :}