Olá Vitor!
Uma das principais diferenças entre function
e const
com () => {}
é que funções declaradas com function
são "elevadas" ao topo do escopo durante a fase de compilação. Isso significa que você pode chamar a função antes mesmo de declará-la no código.
Já as funções declaradas com const
e () => {}
Não são elevadas e você só pode usá-las após a linha onde são definidas.
Avançando um pouco na linguagem, vamos falar na diferença de escopo, funções declaradas com function
têm seu próprio contexto de this
, que pode mudar dependendo de como a função é chamada.
Funções declaradas com const
e () => {}
não têm seu próprio this
; elas herdam o this
do escopo onde foram definidas.
Por que usar const
com () => {}
?
No contexto do projeto, o uso de const
com () => {}
pode trazer algumas vantagens:
Como cintado anteriormente se você precisa que a função mantenha o contexto de this
do escopo onde foi definida, as arrow functions são ideais.
Para funções curtas e simples, as arrow functions podem tornar o código mais conciso e legível.
A forma como a função é declarada (function
ou () => {}
) não interfere diretamente no reset da variável tempoDecorrido
. O que importa é onde e como você está manipulando essa variável. No seu caso, o problema pode estar relacionado à lógica de reset dentro da função contagemRegressiva
ou à forma como o temporizador é controlado.
Ambas as formas têm seus usos e vantagens. A escolha entre uma função declarada com function
e uma função dentro de uma constante com () => {}
depende do contexto e das necessidades específicas do código. No projeto, o professor pode ter escolhido const
com () => {}
por questões de escopo e legibilidade.
Mas de toda forma compreendo que essa distinção possa parecer complexa, dificultando a compreensão das diferenças entre elas. Por isso, recomendo a leitura do seguinte artigo e da documentação sobre funções, que se aprofunda bastante no assunto, e vai lhe ajudar a fixar o conhecimento.
Espero ter ajudado e reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!
Sucesso ✨
Um grande abraço e até mais!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!