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

É possível chamar uma função dentro do parâmtro de chamada de outra função?

Pensei que fosse possível chamar uma função dentro do parâmetro de chamada de outra função: porém o programa que escrevi (feito para resolver a atividade 12 da aula 4) está dando um erro.

<meta charset="UTF-8">
<script>
    function pulaLinha() {
        document.write("<br><br>");
    };
    function arredondadaDiferenca(diferenca) {
        Math.round(diferenca);
    };
    function mostra(texto) {
        document.write(texto);
        pulaLinha();
    };

    var idadeFelipe = 17.7
    var idadeGabriel = 22.1
    var diferencaIdade = (idadeGabriel - idadeFelipe);
    var diferencaArredondada = arredondadaDiferenca(diferencaIdade)

    mostra("Eu nasci " + diferencaArredondada + " anos antes de meu irmão Felipe.");
    mostra("Muito bem!");
</script>

O erro que está dando é mostrar "undefined" no lugar onde deveria mostrar "4". Mesmo sabendo o que foi explicado sobre o erro "undefined" pelo instrutor nos vídeos, tentei resolver o problema e não consegui.

Você sabe como resolver?

1 resposta
solução!

Poe um return antes do

Math.round(diferenca);

Porque você ta fazendo a chamada de método e não está retornando pra lugar nenhum. Então ficaria:

return Math.round(diferenca);

Assim quando você fizer:

var diferencaArredondada = arredondadaDiferenca(diferencaIdade)

Ele vai retornar o valor arredondado pra variável.