Diferença entre funções Javascript (nomeadas / anônimas)
Posted On 13 de novembro de 2024
Funções Nomeadas
As funções nomeadas são definidas com um identificador e podem ser invocadas usando esse nome.
Exemplo:
código// Definindo uma função nomeada
function somar(a, b) {
return a + b;
}
// Chamando a função
console.log(somar(5, 3)); // Saída: 8
Vantagens
- Legibilidade: O nome
somar
deixa claro o propósito da função. - Reusabilidade: Podemos chamar
somar
em diferentes partes do código. - Facilidade de depuração: Se houver um erro, podemos facilmente identificar a função pelo seu nome.
Desvantagens
- Poluição do escopo global: Se não usar módulos ou IIFE,
somar
ficará disponível no escopo global, podendo causar conflitos de nomes.
Funções Anônimas
Funções anônimas não possuem identificador e são frequentemente usadas em callbacks ou atribuídas a variáveis.
Exemplo:
código// Usando função anônima em um callback
const numeros = [1, 2, 3, 4];
numeros.forEach(function(num) {
console.log(num * 2);
});
// Saída: 2, 4, 6, 8
Exemplo com função anônima atribuída a uma variável:
código// Atribuindo uma função anônima a uma variável
const multiplicar = function(a, b) {
return a * b;
};
console.log(multiplicar(4, 5)); // Saída: 20
Vantagens
- Concisão: Reduz o código, especialmente em callbacks.
- Especificidade: A função é definida diretamente no lugar onde será usada, facilitando a compreensão do código local.
Desvantagens
- Legibilidade: Pode tornar o código mais difícil de entender se usada em contextos complexos.
- Depuração: Como não tem nome, é mais difícil identificar a função durante a depuração.
Resumo
Use funções anônimas para callbacks simples ou quando a função será usada apenas uma vez.
Use funções nomeadas para reutilização e clareza no código.