Olá, no último exercício da aula 5,"Agora eu quero ver!", o professor Flávio escreve um código com uma função retornando outra função. Consegui resolver o exercício, mas ficou uma dúvida, qual é a ordem de execução do código, em específico na função c? Sei que a regra de prioridade das operações lógicas é processar primeiro o que está dentro dos parênteses, e depois o que está fora. Mas na função c, o que é priorizado? A instrução return b e seu conteúdo, ou primeiro a chamada a(sobrenome) e só depois o return b? Talvez não haja importância no caso desse código pela sua simplicidade, mas acredito eu que, num código mais complexo, isso deve ter algum impacto no resultado final, estou certo?
<meta charset="UTF-8">
<script>
function pulaLinha() {
document.write("<br>");
}
function mostra(frase) {
document.write(frase);
pulaLinha();
}
function a(texto) {
return "(" + texto + ")";
}
function b(texto) {
return "@" + texto + "@";
}
function c(nome, sobrenome) {
return b(nome + " " + a(sobrenome));
}
var resultado = c("Flávio", "Almeida");
mostra(resultado);
</script>