Capítulo 1: Métodos de Arrays - Iteración y Transformación
Los métodos de iteración de arrays son el corazón de la programación funcional en JavaScript. Permiten procesar colecciones de datos de manera elegante y expresiva. Este capítulo explora los métodos más poderosos y versátiles.
1.1. forEach(): Iteración con Callback
forEach(): Iteración con CallbackforEach() ejecuta una función para cada elemento del array, pero no retorna nada (retorna undefined).
let numeros = [1, 2, 3, 4, 5];
// Iteración simple
numeros.forEach(function(numero) {
console.log(numero * 2);
});
// Output: 2, 4, 6, 8, 10
// Con arrow function (más moderno)
numeros.forEach(num => console.log(num * 2));
// Con índice y array
numeros.forEach((num, indice, array) => {
console.log(`Posición ${indice}: ${num}`);
});forEach() no es mutable
forEach() no es mutableCuándo usar forEach()
forEach()1.2. map(): Transformar Arrays
map(): Transformar Arraysmap() transforma cada elemento usando una función y retorna un nuevo array.
map() vs forEach()
map() vs forEach()1.3. filter(): Filtrar Elementos
filter(): Filtrar Elementosfilter() selecciona elementos que cumplen una condición y retorna un nuevo array.
1.4. reduce(): Agregar Valores
reduce(): Agregar Valoresreduce() acumula valores en un solo resultado. Es el método más poderoso pero también el más complejo.
Sintaxis: array.reduce((acumulador, elemento) => { return nuevo_acumulador }, valor_inicial)
Ejemplo básico: suma
reduce() para crear objetos
reduce() para crear objetosreduce() para contar
reduce() para contar1.5. find() y findIndex(): Búsqueda
find() y findIndex(): Búsquedafind(): obtener el elemento
find(): obtener el elementofindIndex(): obtener el índice
findIndex(): obtener el índice1.6. some() y every(): Validación
some() y every(): Validaciónsome(): ¿Hay al menos uno?
some(): ¿Hay al menos uno?Retorna true si al menos un elemento cumple la condición.
every(): ¿Todos cumplen?
every(): ¿Todos cumplen?Retorna true si todos los elementos cumplen la condición.
1.7. Casos Prácticos Avanzados
Filtrar y mapear juntos
Validar datos antes de procesar
1.8. Encadenamiento de Métodos (Method Chaining)
Los métodos de arrays pueden encadenarse para crear transformaciones complejas:
Legibilidad del encadenamiento
Resumen del Capítulo
Los métodos de iteración y transformación son herramientas poderosas que permiten trabajar con arrays de manera funcional y expresiva. Dominar estos métodos es esencial para escribir código JavaScript moderno y limpio.
💡 Conceptos Clave:
forEach(): Iteración con efectos secundarios (no retorna)
map(): Transformación de arrays (retorna nuevo)
filter(): Selección de elementos
reduce(): Acumulación de valores (el más versátil)
find()/findIndex(): Búsqueda de elementos
some()/every(): Validación de condiciones
Encadenamiento: Combinar múltiples métodos
Inmutabilidad: Estos métodos no modifican el array original
🤔 Preguntas de Reflexión:
¿Cuál es la diferencia entre forEach() y map()?
¿Cuándo usarías filter() vs find()?
¿Cómo usarías reduce() para crear un objeto indexado?
¿Qué retorna some() vs every()?
Encadena filter(), map() y reduce() para resolver un problema complejo.
¿Por qué el encadenamiento de métodos es preferible a bucles anidados?
Última actualización
¿Te fue útil?