2
respostas

Function no final

Foi dito em outra aula que o JS lê o código linha por linha.

Dessa maneira, como o código funciona, sendo que o instrutor chama as funções no começo e só as declara no final?

2 respostas

Fala ai Lucas, tudo bem? Para isso você precisa entender um mecanismo chamado hoisting do JavaScript.

Dá uma olhada nesse artigo: https://blog.matheuscastiglioni.com.br/porque-variaveis-funcoes-podem-ser-acessadas-antes-da-declaracao/

Acho que pode te ajudar.

Espero ter ajudado.

Resumindo o que instrutor Matheus apresentou (recomendo que leia o artigo mesmo assim:

No JavaScript as declarações possuem uma espécie de hierarquia... declarações de funções por exemplo serão sempre passadas para topo através do hoisting (que significa literalmente "elevação").

Como o hierarquia do uso da função é menor que a da declaração. Quando você executa o código, o uso da função vai para baixo da seu sua declaração, então é como se você tivesse declarado primeiro e usado depois, não interfere.

Eu prefiro mesmo com esse mecanismo interno do JavaScript declarar primeiro e usar depois, mas saiba que na execução o oposto não fará diferença.