Neste artigo você aprenderá por que colocar função em variável pode ser uma boa estratégia quando você programa em JavaScript.
Fala programador(a), beleza? Bora aprender a vantagem de adicionar funções a variáveis em JavaScript!
Primeiro é necessário entender o conceito de hoisting no JavaScript
Basicamente devido a este recurso as variáveis e funções são identificadas primeiramente no código, porém não são inicializadas
Veja:
console.log(a); var a = 10;
A saída do console.log vai dar undefined, e perceba que a variável a nem tinha sido declarada ainda, porém pelo hoisting ela já foi identifica e o software vai declará-la posteriormente
Então considerando o hoisting isso é possível:
x(); function x() { console.log('teste'); }
A função será içada para o topo e conseguimos executá-la antes da sua criação de fato no código
Causando assim um problema de manutenção e evolução no código
Atribuindo a função para uma variável, não poderemos utilizá-la até o ponto em que ela foi declarada for percorrido
Veja:
x(); var x = function() { console.log('teste'); }
Aqui a função não será executada, tendo assim que respeitar o momento em que ela é declarada no código, precisaremos mudar a invocação de x para uma linha embaixo da função
Isso deixará o código menos confuso para quem for posteriormente analisá-lo e depurá-lo
Este é o maior diferencial ao utilizar funções em variáveis: a visibilidade de escopo
Conclusão
Neste artigo vimos por que colocar função em variável em JavaScript
Adicionamos uma validação a mais no código, pois ele terá que respeitar a execução para conseguir executar uma função
Assim deixando o código mais padronizado e de fácil manutenção
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube
Muito obrigado, eu tinha essa duvida
valeu Filipe!