Encadeamento de Métodos de Array
Parte da seção Lógica & Fluxo do Journey de JavaScript da Coddy — lição 55 de 65.
O encadeamento de arrays permite que você realize múltiplas operações em um array em uma única instrução. Essa abordagem pode tornar seu código mais conciso e legível.
Aqui está um exemplo de encadeamento de métodos de array:
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const result = numbers
.filter(num => num % 2 === 0)
.map(num => num * 2)
.reduce((sum, num) => sum + num, 0);
console.log(result); // 60Neste exemplo, começamos com um array de números, filtramos os números ímpares, dobramos cada número restante e, em seguida, somamos os resultados.
A ordem do encadeamento é importante. Cada método na cadeia opera sobre o resultado do método anterior.
Desafio
FácilCrie uma função chamada processFruits que recebe um array de objetos de frutas. Cada objeto de fruta possui as propriedades name (string) e quantity (number).
A função deve usar métodos de array encadeados para:
- Filtrar as frutas com quantidade igual a 0
- Transformar cada nome de fruta para letras maiúsculas
- Criar uma string que liste todas as frutas com suas quantidades como "APPLE: 5, BANANA: 3"
Um lembrete rápido:
Você pode usar a função .join(", ") para converter um array de strings em uma única string.
É possível encadear até mesmo a função .join():
arr.filter(...)
.map(...)
.join(...)Folha de consulta
O encadeamento de métodos de array permite realizar múltiplas operações em um array em uma única instrução, tornando o código mais conciso e legível.
Cada método na cadeia opera sobre o resultado do método anterior:
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const result = numbers
.filter(num => num % 2 === 0)
.map(num => num * 2)
.reduce((sum, num) => sum + num, 0);
console.log(result); // 60Você também pode encadear o método .join() para converter um array em uma string:
arr.filter(...)
.map(...)
.join(", ")Experimente você mesmo
function processFruits(fruits) {
// Escreva seu código aqui
}
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