Table of Contents
URL: https://www.progressiverobot.com/js-filter-array-method-fr/
Introduction
La méthode filter() sur tableau crée un nouveau tableau avec des éléments qui répondent à un critère donné à partir d'un tableau existant :
var numbers = [1, 3, 6, 8, 11];
var lucky = numbers.filter(function(number) {
return number > 7;
});
// [ 8, 11 ]
L'exemple ci-dessus prend les numbers et renvoie un nouveau tableau filtré avec uniquement les valeurs supérieures à sept.
Syntaxe de filtre
var newArray = array.filter(function(item) {
return condition;
});
L'argument <^>item<^> est une référence à l'élément courant dans le tableau, car filter() le vérifie par rapport à la <^>condition<^>. C'est utile pour accéder aux propriétés, dans le cas d'objets.
Si l'<^>item<^> passe la condition, il est envoyé au nouveau tableau.
Filtrer un ensemble d'objets
Un cas d'utilisation courant de .filter() concerne un tableau d'objets à travers leurs propriétés :
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”} ]
Ressources supplémentaires
Pour plus de détails sur la méthode filter(), voir la référence MDN.
Le filtre n'est qu'une des nombreuses méthodes d'itération sur les tableaux en JavaScript ; lire Comment utiliser les méthodes d'itération des tableaux en JavaScript pour en savoir plus sur les autres méthodes comme map() et reduce().