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.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
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.
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
1Strings em Profundidade
Fundamentos de StringsIterar sobre StringsTemplate LiteralsMétodos de StringRecapitulação - String Weaver4JSON Parte 2
Iterar sobre JSONJSON AninhadoEncadeamento Opcional em JSONCópia Rasa e ProfundaRecapitulação - Loja de BicicletasRecapitulação - Sistema Solar7Sistema de Gerenciamento de Biblioteca
Visão Geral do ProjetoAdicionando Livros10Gerenciar Sistema de Festival
Visão Geral do ProjetoAdicionar Filmes e Locais2Arrays Multidimensionais
Fundamentos de Arrays 2DAcessando Elementos de Arrays 2DLoops Aninhados com Arrays 2DRecapitulação - Arrays 2DAdição e Subtração de MatrizesArrays IrregularesArrays 3D e AlémPadrões Comuns de Arrays 2DRecapitulação - Tudo Sobre Arrays5Sets Parte 1
O que é um Set?Iterando sobre SetsAdicionando um elementoRemovendo um elementoVerificando se um elemento existeTamanho e Is EmptyCopy e ClearRecapitulação - O básico de Sets8Tópicos Interessantes sobre Arrays
Desestruturação de ArraysSintaxe Spread em ArraysArrays EsparsosRecapitulação - Workshop de Arrays3JSON Parte 1
O que é um JSON?Verificar se a Chave ExisteMétodos de ObjetoO Spread Operator Parte 1O Spread Operator Parte 2Remover ChavesRecapitulação - Manipular Chaves JSON6Conjuntos Parte 2
Matemática - União de ConjuntosMatemática - Interseção de ConjuntosMatemática - Diferença de ConjuntosMatemática - Diferença SimétricaSubconjuntos e SuperconjuntosRecapitulação - Agrupar Amigos9Métodos Avançados de Array
Os Métodos Join & SplitO Método MapO Método FilterO Método ReduceEncadeamento de Métodos de ArrayForEach e Map são iguais?O Método SortOs Métodos Find & FindIndexRecapitulação - O Mestre do Encadeamento