Menu
Coddy logo textTech

ForEach e Map são iguais?

Parte da seção Lógica & Fluxo do Journey de JavaScript da Coddy — lição 56 de 65.

Embora forEach() e map() sejam ambos métodos de array usados para iteração, eles servem a propósitos diferentes e possuem comportamentos distintos:

forEach():

  • Executa uma função fornecida uma vez para cada elemento do array.
  • Não cria um novo array.
  • Retorna undefined.
  • Não pode ser encadeado com outros métodos de array.

map():

  • Cria um novo array com os resultados da chamada de uma função fornecida em cada elemento do array.
  • Retorna um novo array com o mesmo comprimento do original.
  • Pode ser encadeado com outros métodos de array.

Exemplo:

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

// forEach
numbers.forEach(num => console.log(num * 2));
// Logs: 2, 4, 6, 8
// Retorna: undefined
// map
const doubled = numbers.map(num => num * 2);
console.log(doubled);
// Saída: [2, 4, 6, 8]
// Retorna: Um novo array [2, 4, 6, 8]

Use forEach() quando você quiser realizar uma operação em cada elemento sem criar um novo array. Use map() quando você quiser transformar cada elemento e criar um novo array com os resultados.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Folha de consulta

Embora forEach() e map() sejam ambos métodos de array usados para iteração, eles servem a propósitos diferentes:

forEach():

  • Executa uma função uma vez para cada elemento do array
  • Não cria um novo array
  • Retorna undefined
  • Não pode ser encadeado com outros métodos de array

map():

  • Cria um novo array com os resultados da chamada de uma função em cada elemento
  • Retorna um novo array com o mesmo comprimento do original
  • Pode ser encadeado com outros métodos de array
const numbers = [1, 2, 3, 4];

// forEach - realiza a operação, retorna undefined
numbers.forEach(num => console.log(num * 2));

// map - transforma os elementos, retorna um novo array
const doubled = numbers.map(num => num * 2);
console.log(doubled); // [2, 4, 6, 8]

Use forEach() para operações sem criar um novo array. Use map() para transformar elementos e criar um novo array.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo