Menu
Coddy logo textTech

¿Son iguales ForEach y Map?

Parte de la sección Lógica y Flujo del Journey de JavaScript de Coddy — lección 56 de 65.

Mientras que forEach() y map() son ambos métodos de array utilizados para la iteración, sirven para propósitos diferentes y tienen comportamientos distintos:

forEach():

  • Ejecuta una función proporcionada una vez por cada elemento del array.
  • No crea un nuevo array.
  • Devuelve undefined.
  • No se puede encadenar con otros métodos de array.

map():

  • Crea un nuevo array con los resultados de llamar a una función proporcionada en cada elemento del array.
  • Devuelve un nuevo array de la misma longitud que el original.
  • Se puede encadenar con otros métodos de array.

Ejemplo:

const numbers = [1, 2, 3, 4];

// forEach
numbers.forEach(num => console.log(num * 2));
// Muestra en consola: 2, 4, 6, 8
// Devuelve: undefined
// map
const doubled = numbers.map(num => num * 2);
console.log(doubled);
// Salida: [2, 4, 6, 8]
// Devuelve: Un nuevo array [2, 4, 6, 8]

Usa forEach() cuando quieras realizar una operación en cada elemento sin crear un nuevo array. Usa map() cuando quieras transformar cada elemento y crear un nuevo array con los resultados.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Hoja de referencia

Si bien forEach() y map() son ambos métodos de array utilizados para la iteración, sirven para propósitos diferentes:

forEach():

  • Ejecuta una función una vez por cada elemento del array
  • No crea un nuevo array
  • Devuelve undefined
  • No se puede encadenar con otros métodos de array

map():

  • Crea un nuevo array con los resultados de llamar a una función en cada elemento
  • Devuelve un nuevo array de la misma longitud que el original
  • Se puede encadenar con otros métodos de array
const numbers = [1, 2, 3, 4];

// forEach - realiza la operación, devuelve undefined
numbers.forEach(num => console.log(num * 2));

// map - transforma los elementos, devuelve un nuevo array
const doubled = numbers.map(num => num * 2);
console.log(doubled); // [2, 4, 6, 8]

Usa forEach() para operaciones sin crear un nuevo array. Usa map() para transformar elementos y crear un nuevo array.

Pruébalo tú mismo

Esta lección no incluye un desafío de código.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo