🔄Iteração de Array

Métodos para iterar arrays incluem map(), que transforma elementos; filter(), que seleciona elementos; e reduce(), que acumula valores em um único resultado.

Introdução

JavaScript oferece métodos poderosos para iteração de arrays, como map(), filter(), e reduce().


Tipos

1. map()

O método map() cria um novo array com os resultados da aplicação de uma função em cada elemento do array original.

Sintaxe:

array.map(callback)

Exemplo:

const numeros = [1, 2, 3, 4, 5];
const dobrados = numeros.map(num => num * 2);

console.log(dobrados); // [2, 4, 6, 8, 10]

2. filter()

O método filter() cria um novo array com todos os elementos que passam no teste implementado pela função fornecida.

Sintaxe:

array.filter(callback)

Exemplo:

const numeros = [1, 2, 3, 4, 5];
const pares = numeros.filter(num => num % 2 === 0);

console.log(pares); // [2, 4]

3. reduce()

O método reduce() executa uma função redutora sobre cada elemento do array, resultando em um único valor.

Sintaxe:

array.reduce(callback, valorInicial)

Exemplo:

const numeros = [1, 2, 3, 4, 5];
const soma = numeros.reduce((acumulador, valorAtual) => acumulador + valorAtual, 0);

console.log(soma); // 15

Exercícios

  1. Exercício 1: Crie uma função usando a declaração de função tradicional que receba dois números e retorne a soma deles.

  2. Exercício 2: Reescreva a função do exercício 1 como uma arrow function.

  3. Exercício 3: Use map() para criar um novo array com o quadrado de cada número de um array original.

  4. Exercício 4: Use filter() para criar um novo array apenas com os números ímpares de um array original.

  5. Exercício 5: Use reduce() para calcular o produto de todos os números de um array.

Respostas

Exercício 1: Função tradicional para somar dois números.

function soma(a, b) {
    return a + b;
}

console.log(soma(2, 3)); // 5

Exercício 2: Arrow function para somar dois números.

const soma = (a, b) => a + b;

console.log(soma(2, 3)); // 5

Exercício 3: Usando map() para quadrados.

const numeros = [1, 2, 3, 4, 5];
const quadrados = numeros.map(num => num * num);

console.log(quadrados); // [1, 4, 9, 16, 25]

Exercício 4: Usando filter() para números ímpares.

const numeros = [1, 2, 3, 4, 5];
const impares = numeros.filter(num => num % 2 !== 0);

console.log(impares); // [1, 3, 5]

Exercício 5: Usando reduce() para calcular o produto.

const numeros = [1, 2, 3, 4, 5];
const produto = numeros.reduce((acumulador, valorAtual) => acumulador * valorAtual, 1);

console.log(produto); // 120

Atualizado

Isto foi útil?