Método filter


O método filter é uma função de ordem superior que permite filtrar os elementos de um array com base em uma condição especificada pela função de callback. Ele cria um novo array contendo apenas os elementos que atendem à condição estabelecida.

Nota

O método filter() sempre retorna um array com o tamanho menor ou igual ao array original.

Exemplos

const numbers = [1, 40, 82, 93, 9, 4, 12, 29, 57, 63, 32];
 
const filteredNumbers = numbers.filter((number) => number > 10);
 
console.log(filteredNumbers);
 
// [ 40, 82, 93, 12, 29, 57, 63, 32 ]

No exemplo acima, o método filter é usado para criar um novo array chamado filteredNumbers, contendo apenas os números maiores que 10 do array original numbers.

const people = [
  { name: "Luiz", age: 62 },
  { name: "Maria", age: 23 },
  { name: "Eduardo", age: 55 },
  { name: "Letícia", age: 19 },
  { name: "Rosana", age: 32 },
  { name: "Wallace", age: 47 },
];
 
const peopleWithLargeName = people.filter((person) => person.name.length >= 7);
 
console.log(peopleWithLargeName);
 
/*
[
  { name: 'Eduardo', age: 55 },
  { name: 'Letícia', age: 19 },
  { name: 'Wallace', age: 47 }
]
*/

Neste exemplo, o método filter é aplicado ao array de objetos people para criar um novo array chamado peopleWithLargeName, contendo apenas os objetos cujos nomes têm comprimento maior ou igual a 7 caracteres.

Referências