Filtragem de Arrays com o Método filter()
Este capítulo explora as particularidades do método filter(), esclarecendo sua sintaxe, aplicações e como ele facilita a criação de arrays refinados.
filter()
O método filter() seleciona elementos que atendem a uma determinada condição. Vamos decifrar a sintaxe:
array.filter((element, index, array) => {
// Callback body
});
O que é importante saber sobre o método filter():
- Não altera o array original;
- Itera sobre o array original elemento por elemento;
- Retorna um novo array;
- Elementos são adicionados ao novo array se satisfizerem a condição do callback;
- Se o callback retornar true, o elemento é incluído; caso contrário, é omitido.
Exemplos
O verdadeiro potencial do método filter() torna-se evidente quando aplicado a diferentes cenários. Vamos explorar alguns exemplos ilustrativos:
Exemplo 1: Filtrando Números Ímpares
Neste exemplo, o método filter() cria um array (oddNumbers) contendo apenas os números ímpares do array original.
123456const numbers = [15, 22, 37, 41, 58, 67, 72]; const oddNumbers = numbers.filter((number) => { return number % 2 !== 0; }); console.log(oddNumbers); // Output: 15, 37, 41, 67
Exemplo 2: Filtrando Produtos por Faixa de Preço
Aqui, o método filter() é utilizado para extrair produtos com preços abaixo de $500, criando um novo array (affordableProducts).
const products = [
{ name: "Keyboard", price: 220 },
{ name: "Smartphone", price: 800 },
{ name: "Tablet", price: 500 },
{ name: "Headphones", price: 120 },
{ name: "Camera", price: 1500 },
];
const affordableProducts = products.filter((product) => product.price < 500);
console.log(affordableProducts); // Output: [ { name: "Keyboard", price: 220 }, { name: "Headphones", price: 120 } ]
1. O que o método filter() faz?
2. Qual é uma característica fundamental do método filter()?
3. No exemplo abaixo, qual deve ser a condição para que o array numbersGreaterThan20 contenha números maiores que 20?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 2.27
Filtragem de Arrays com o Método filter()
Deslize para mostrar o menu
Este capítulo explora as particularidades do método filter(), esclarecendo sua sintaxe, aplicações e como ele facilita a criação de arrays refinados.
filter()
O método filter() seleciona elementos que atendem a uma determinada condição. Vamos decifrar a sintaxe:
array.filter((element, index, array) => {
// Callback body
});
O que é importante saber sobre o método filter():
- Não altera o array original;
- Itera sobre o array original elemento por elemento;
- Retorna um novo array;
- Elementos são adicionados ao novo array se satisfizerem a condição do callback;
- Se o callback retornar true, o elemento é incluído; caso contrário, é omitido.
Exemplos
O verdadeiro potencial do método filter() torna-se evidente quando aplicado a diferentes cenários. Vamos explorar alguns exemplos ilustrativos:
Exemplo 1: Filtrando Números Ímpares
Neste exemplo, o método filter() cria um array (oddNumbers) contendo apenas os números ímpares do array original.
123456const numbers = [15, 22, 37, 41, 58, 67, 72]; const oddNumbers = numbers.filter((number) => { return number % 2 !== 0; }); console.log(oddNumbers); // Output: 15, 37, 41, 67
Exemplo 2: Filtrando Produtos por Faixa de Preço
Aqui, o método filter() é utilizado para extrair produtos com preços abaixo de $500, criando um novo array (affordableProducts).
const products = [
{ name: "Keyboard", price: 220 },
{ name: "Smartphone", price: 800 },
{ name: "Tablet", price: 500 },
{ name: "Headphones", price: 120 },
{ name: "Camera", price: 1500 },
];
const affordableProducts = products.filter((product) => product.price < 500);
console.log(affordableProducts); // Output: [ { name: "Keyboard", price: 220 }, { name: "Headphones", price: 120 } ]
1. O que o método filter() faz?
2. Qual é uma característica fundamental do método filter()?
3. No exemplo abaixo, qual deve ser a condição para que o array numbersGreaterThan20 contenha números maiores que 20?
Obrigado pelo seu feedback!