Função - Objeto de primeira classe
No JavaScript, as funções são consideradas objetos de primeira classe, o que significa que elas podem ser tratadas como qualquer outro objeto.
Atribuição a uma variável
As funções podem ser atribuídas a variáveis, tornando-as expressões de função ou function expressions. Isso permite que você utilize funções anonimamente ou as passe como argumentos para outras funções.
const falaOi = function () {
console.log("Oi");
};
falaOi();
Passagem de função como parâmetro
Como as funções são objetos de primeira classe, você pode passá-las como argumentos para outras funções. Isso é útil em situações como callbacks e programação assíncrona.
const falaOi = function () {
console.log("Oi");
};
function executarFuncao(funcao) {
funcao();
}
executarFuncao(falaOi);
Function expression nomeada
Você também pode criar funções expressas com nomes, o que pode ser útil para referências internas e facilitar a depuração.
const falaOi = function funcaoFalaOi() {
console.log("Oi");
};
falaOi();