Una función es un bloque de código reusable que realiza una tarea
específica. En JavaScript, hay varias maneras de definirlas, pero las más comunes son la
tradicional, la anónima y la de flecha. Comprender sus diferencias es crucial para escribir
código moderno y eficiente.
1. Función Tradicional (Declaración)
Es la forma clásica y más antigua de definir una función. Se caracteriza por
el uso de la palabra clave function seguida de un nombre explícito.
function nombreFuncion(param1, param2) { /* código aquí */ }
Ventaja: Tiene Hoisting. Puede ser llamada
antes de ser declarada en el código. Es excelente para la legibilidad.
2. Función Anónima (Expresión)
Es una función que no tiene nombre. Se usa generalmente
cuando la función se asigna como valor a una variable (convirtiéndose en una "expresión") o
se pasa como argumento a otra función (callback).
const miFuncion = function(param1) { /* código aquí */ };
Ventaja: Evita la contaminación del ámbito global. Es la
base para las funciones de flecha.
3. Función de Flecha (Arrow Function)
Introducidas en ES6 (2015). Son una sintaxis más corta para escribir
expresiones de función. No tienen su propia referencia a this, lo que las hace
ideales para el manejo de eventos y dentro de objetos.
const miFlecha = (param1) => { /* código aquí */ };
Ventaja: Sintaxis concisa. Son la opción más moderna para la
mayoría de las tareas.