Até agora, já aprendemos a criar funções mais modernas, trabalhar com parâmetros flexíveis e entender conceitos importantes como Closures.
Agora vamos dar um passo muito importante no JavaScript moderno: aprender a trabalhar com arrays de forma funcional, usando os métodos map, filter e reduce.
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Entender o que são map, filter e reduce
- Usar cada método para um propósito específico
- Transformar, filtrar e reduzir arrays
- Escrever código mais limpo e legível
- Substituir laços tradicionais em muitos casos
Antes de começar: o array base
Para todos os exemplos desta aula, vamos usar o mesmo array:
const numeros = [1, 2, 3, 4, 5]; map — transformando valores
O método map percorre um array e cria um novo array, transformando cada item.
Exemplo: dobrar todos os números do array.
const dobrados = numeros.map(numero => { return numero * 2; });
console.log(dobrados); // Saída será [2, 4, 6, 8, 10]
map sempre retorna um novo array com o mesmo tamanho do original. filter — filtrando valores
O método filter cria um novo array apenas com os elementos que passam em uma condição.
Exemplo: pegar apenas os números pares.
const pares = numeros.filter(numero => { return numero % 2 === 0; });
console.log(pares); // Saída será [2, 4]
true, o elemento entra no novo array. reduce — reduzindo tudo a um único valor
O método reduce percorre o array e reduz todos os valores a um único resultado.
Exemplo: somar todos os números do array.
const soma = numeros.reduce((total, numero) => { return total + numero; }, 0);
console.log(soma); // Saída será 15
Aqui:
totalcomeça com o valor inicial (0)numeroé o valor atual do array- O retorno vira o novo
total
Comparando map, filter e reduce
- map → transforma valores
- filter → seleciona valores
- reduce → gera um único resultado
Usando os três juntos
Agora um exemplo mais real: Dobrar os números pares e somar o resultado.
const resultado = numeros .filter(n => n % 2 === 0) .map(n => n * 2) .reduce((total, n) => total + n, 0);
console.log(resultado); // Saída será 12
Passo a passo:
- Filtra os pares → [2, 4]
- Dobra → [4, 8]
- Soma → 12
Resumo da aula para nunca mais esquecer
maptransforma cada item do arrayfilterseleciona itens com base em uma condiçãoreducereduz tudo a um único valor- Podem ser usados juntos de forma encadeada
- Tornam o código mais limpo e expressivo
Na próxima aula, vamos aprender sobre find, some e every e entender como testar condições em arrays.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
PDP-1
O primeiro computador a conseguir rodar o jogo Spacewar era o PDP-1, que custava 120 mil dólares e pertencia ao Massachusetts Institute of Technology. O jogo demorou 200 horas para ser desenvolvido, em 1962, e seu criador foi um cientista da computação chamado Steve Russel.
Nintendo Entertainment System
O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.
Mario e seu bigode
O personagem Mario só possui bigode porque quando ele foi criado, em 1981, a resolução de tela dos equipamentos disponíveis não permitia que fosse desenhada uma boca, então os desenvolvedores fizeram o grande bigode para contornar essa limitação tecnológica.
Final Fantasy X
O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!
Tetris
O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.










