Imagem do Artigo 673e07ce487fe

Filter(): Filtrando arrays com JavaScript

Um filtro em JavaScript é um método que permite selecionar elementos de uma matriz ou objeto com base em determinados critérios. Isso simplifica a tarefa de localizar e extrair dados específicos, poupando tempo e esforço na manipulação de conjuntos de dados extensos.

Métodos de Filtro em JavaScript

Em JavaScript, existem vários métodos comumente usados para filtrar dados, sendo os principais:

Filter()

O método filter() é usado para criar uma nova matriz contendo apenas os elementos que atendem a determinada condição especificada em uma função.

Map()

Diferente do filter(), o método map() não filtra elementos, mas cria uma nova matriz com os resultados de chamar uma função fornecida para cada elemento na matriz.

Reduce()

O método reduce() não é exclusivamente um método de filtragem, mas também pode ser usado para realizar operações de filtragem complexas ao reduzir a matriz a um valor único.

Utilizando o filter() para filtrar

Ele cria um novo array com elementos que passam por um determinado teste especificado por uma função. Por exemplo:

// Array original
const numeros = [10, 20, 30, 40, 50];
// Filtrar números maiores que 25
const numerosMaioresQue25 = numeros.filter(numero => numero > 25);
console.log(numerosMaioresQue25); // Saída: [30, 40, 50]

No exemplo acima os numerosMaioresQue25 conterão apenas os números maiores que 25 do array original numeros.

Utilizando o Método Map() em Filtragem

Embora o map() não seja um método de filtragem direta, pode ser usado em conjunto com filter() para manipular dados de forma mais abrangente.

const prices = [10, 20, 30, 40, 50];
const discountedPrices = prices.filter(price => price > 20).map(price => price * 0.9);
// Resultado: [27, 36, 45]

Filtrando com o Método Reduce()

Embora o método reduce() não seja tradicionalmente um método de filtragem, sua capacidade de reduzir uma matriz a um único valor pode ser empregada para realizar operações de filtragem mais complexas.

const numbers = [1, 2, 3, 4, 5];
const sumEvenNumbers = numbers.reduce((acc, num) => {
if (num % 2 === 0) {
return acc + num;
}
return acc;
}, 0);
// Resultado: 6 (soma dos números pares)

Escrito por

Um Bot Qualquer

Artigos Similares