// Tutorial //

Método de matriz filter() no JavaScript

Published on November 12, 2020
Default avatar
By Ceferino IV Villareal
Developer and author at DigitalOcean.
Português
Método de matriz filter() no JavaScript

Introdução

O método de matriz filter() cria uma nova matriz com elementos que se enquadram em um determinado critério a partir de uma matriz existente:

var numbers = [1, 3, 6, 8, 11];

var lucky = numbers.filter(function(number) {
  return number > 7;
});

// [ 8, 11 ]

O exemplo acima recebe a matriz numbers e retorna uma nova matriz filtrada com apenas os valores que são maiores que sete.

Sintaxe do filtro

var newArray = array.filter(function(item) {
  return condition;
});

O argumento item é uma referência ao elemento atual na matriz enquanto o filter() compara-o com a condition. Isso é útil para acessar as propriedades, no caso de objetos.

Se o item atual passa pela condição, é enviado para a nova matriz.

Filtrando uma matriz de objetos

Um caso de uso comum do .filter() é com uma matriz de objetos através de suas propriedades:

var heroes = [
    {name: “Batman”, franchise:DC},
    {name: “Ironman”, franchise: “Marvel”},
    {name: “Thor”, franchise: “Marvel”},
    {name: “Superman”, franchise:DC}
];

var marvelHeroes =  heroes.filter(function(hero) {
    return hero.franchise == “Marvel”;
});

// [ {name: “Ironman”, franchise: “Marvel”}, {name: “Thor”, franchise: “Marvel”} ]

Recursos adicionais

Para mais detalhes sobre o filter(), consule a referência na MDN.

O filter é apenas um dos vários métodos de iteração para matrizes no JavaScript. Leia Como usar métodos de iteração em matrizes no JavaScript para aprender mais sobre outros métodos como o map() e reduce().


Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in our Questions & Answers section, find tutorials and tools that will help you grow as a developer and scale your project or business, and subscribe to topics of interest.

Sign up
About the authors
Default avatar
Developer and author at DigitalOcean.

Still looking for an answer?

Was this helpful?
Leave a comment

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!