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]
O 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]
Se a condição retornar 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:

  • total começ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
Esses métodos não alteram o array original. Eles sempre retornam novos valores.

Resumo da aula para nunca mais esquecer

  • map transforma cada item do array
  • filter seleciona itens com base em uma condição
  • reduce reduz 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.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.


Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.


As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


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.


Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras