Você está aqui: JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como filtrar os elementos de um array em JavaScript usando a função filter() - Vetores e matrizes em JavaScriptQuantidade de visualizações: 2493 vezes |
O método filter(), adicionado à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5) nos permite criar um novo vetor contendo apenas os elementos que passarem em um determinado teste, que pode ser uma função de usuário personalizada. Esta função é uma função de callback que será chamada uma vez para cada um dos elementos do vetor. Para melhor entendimento, comece analisando o trecho de código abaixo: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- <script type="text/javascript"> function maiorQue10(valor){ return valor > 10; } // vamos criar um vetor de inteiros var valores = [2, 6, 32, 9, 3, 21]; // vamos filtrar o vetor para obter apenas os // valores maiores que 10 var maiores10 = valores.filter(maiorQue10); // vamos mostrar o resultado window.alert(maiores10); </script> Neste código usamos o método filter() para gerar um novo vetor contendo apenas os elementos com valores maiores que 10. Veja que fornecemos uma função como argumento para o método filter() e, dentro dessa função, nós retornamos true ou false para que a filtragem inclua ou não o valor sendo analisado no momento. Uma função passada para o método filter() pode conter os seguintes argumentos (nessa mesma ordem): a) O valor do item; b) O índice do item (opcional); c) O vetor a partir do qual o método filter() está sendo chamado (opcional). Veja mais um trecho de código no qual retornamos os elementos de um array maiores que 10 e precedidos de um número par: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- <script type="text/javascript"> function maiorQue10PrecPar(valor, indice, vetor){ // o primeiro elemento não é precedido por // outro. Vamos descartá-lo if(indice == 0){ return false; } // é precedido por um número par? if(vetor[indice - 1] % 2 == 0){ // é maior que 10? return valor > 10; } // nenhuma das condições acima? return false; } // vamos criar um vetor de inteiros var valores = [2, 6, 32, 9, 3, 21]; // vamos filtrar o vetor para obter apenas os // valores maiores que 10 e precedidos por um // número par var maiores10 = valores.filter(maiorQue10PrecPar); // vamos mostrar o resultado window.alert(maiores10); </script> Execute este código e verá que apenas o valor 32 será retornado, pois ele é o único maior que 10 e precedido por um número par. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
C - Como inverter (reverter) o conteúdo de uma string em C usando uma função str_reverse() personalizada |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |