TIPOS DE FUNCIONES EN JAVASCRIPT
- Function Declaration (Declaración de Función): Es la forma clásica de declarar funciones. JavaScript “mueve” la declaración al inicio del scope, por lo que se puede usarla antes de que aparezca en el código.
function greet() { return "Hello"; } - Function Expression (Expresión de Función): La función se asigna a una variable. Solo se puede usar después de que se haya declarado la variable. Es más segura y se usa mucho con "const" o "let".
const greet = () => "Hello"; - IIFE (Immediately Invoked Function Expression): Esta función es un ejemplo clásico de un callback. Básicamente, es una función que recibe a otra función como argumento para ejecutarla más tarde..
function fetchData(cb) { cb("Data received"); } - Higher-Order Function (Función de Orden Superior): Su única tarea es recibir una función por parámetro y ejecutarla inmediatamente usando un valor predefinido.. Ejemplos clásicos: map(), filter(), reduce().
function process(fn) { return fn(10); } - Pure Function (Función Pura): Se trata de una función pura y predecible. Al no tener efectos secundarios —no muta estado externo, no realiza I/O ni interactúa con la consola—, garantiza que para una misma entrada siempre obtendrás el mismo comportamiento. Este determinismo es clave para escribir código testable, desacoplado y fácil de razonar.
function add(a, b) { return a + b; } - Arrow Function (Función Flecha): Es más concisa y no crea su propio contexto de "this", lo que evita errores comunes al trabajar con clases, objetos o componentes de React..
const greet = () => "Hello";