O que é o método Filter e como ele funciona?

O método filter é usado para criar um novo array com elementos que passam em um teste especificado, tornando-o útil para extrair seletivamente itens com base em critérios. Neste exemplo, estamos usando o método filter para criar um novo array contendo apenas números pares:
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const evenNumbers = numbers.filter((num) => num % 2 === 0);

console.log(evenNumbers); // [2, 4, 6, 8, 10]
Neste exemplo, o método filter aplica uma função de callback a cada elemento do array numbers. A callback verifica se cada número é par usando o operador de resto (%). Se o número for par, a função retorna true e esse número é incluído no novo array. Se for ímpar, a função retorna false e esse número é excluído. Assim como o método map, a função callback para o método filter aceita os mesmos três argumentos: o elemento atual sendo processado, o índice e o array. É importante notar que se nenhum elemento passar no teste, o método filter retorna um array vazio.
const numbers = [2, 4, 6, 8].filter((num) => num > 10);

console.log(numbers); // []
filter é incrivelmente versátil e pode ser usado em muitos cenários. Você pode usá-lo para remover valores null ou undefined de um array, para filtrar objetos com base em suas propriedades ou para implementar funcionalidade de busca. Aqui está um exemplo de uso do método filter para retornar um array de objetos para indivíduos com menos de 30 anos.
const developers = [
  { name: "Alice", age: 25 },
  { name: "Bob", age: 30 },
  { name: "Charlie", age: 35 },
  { name: "David", age: 25 }
];

const youngPeople = developers.filter((person) => person.age < 30);
console.log(youngPeople);

// [{ name: "Alice", age: 25 }, { name: "David", age: 25 }]
Ao longo do restante deste currículo, você usará os métodos map e filter com muita frequência. Portanto, familiarizar-se com eles não só agilizará seu processo de codificação como também ajudará você a escrever um código mais limpo e eficiente.
Este módulo não possui perguntas. Marque como concluído.