Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Por que os calculaImc antes do fechamento da "}" não funciona?


<meta charset="UTF-8">

<script>

    function pulalinha() {
        // pulando 2 linhas 
        document.write("<br><br>");

}

    function mostra(frase) {
        document.write(frase);
        pulalinha();

    }


    function calculaImc(altura, peso)  {

        var imc = peso / (altura * altura);
        mostra("O imc calculado é: " + imc )


        calculaImc(1.71, 68);
        calculaImc(1.72, 71);

    }


</script>

Só funcionou depois que coloquei os termos

calculaImc(1.71, 68); calculaImc(1.72, 71); depois do "}" ....

Gostaria de entender melhor esta questão. Obrigada!

2 respostas
solução!

Olá, Suzi, tudo bem?

Notei que seu código estava sem aparecer. Tomei a liberdade de editar seu tópico para mostrar o seu código na primeira mensagem. =)

Aqui no fórum nós utilizamos a linguagem de Markdown. Caso você queira se aprofundar na linguagem, aqui estão alguns artigos que possam te interessar:

Fórum da Alura: como inserir imagens nas perguntas

Markdown: como trabalhar com essa linguagem de markup?

E, também, um guia em inglês para iniciar a usar o Markdown: disponível aqui

Outra forma de utilizar essa tecnologia, de uma forma mais simplificada, é pela barra de ferramentas do editor de texto. Da esquerda para a direita, no sétimo item, temos a opção para inserir o código.

Captura de tela do sétimo ícone da esquerda para a direita, das ferramentas de edição de texto, marcado em um quadrado vermelho sem preenchimento.

Após clicar, seu código agora deverá ficar entre os acentos graves.

Captura de tela escrita "Código aqui" entre dois acentos graves em trios.O resultado é este:

Código aqui

Bom, agora vamos à dúvida!

Na linguagem JavaScript nós temos os blocos de chaves, e sempre ao indicar uma função, é necessário abrir o bloco e fechá-lo. Se você manter um código apenas com a abertura (ou seja, a chave de início: { , o programa ficará sem rodar, porque ele não lê como um processo completo, e sim como um parte sem final. Para finalizar o processo iniciado, você precisa de algo marcando o fim. E é para isso que a chave final do bloco funciona: } . Repare que nas outras funções do seu código também foram necessárias ambas as chaves: pois é uma operação de início e fim. Cada bloco precisa das marcações para o editor entender quando ela começa e quando termina. :)

Caso as dúvidas persistam, sinta-se à vontade para perguntar no fórum. Estamos disponíveis para te ajudar!

Abraços.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Nossa, baita ajuda! Muito grata, Maria Isabel! Abraço!