Retourner ' la page d'accueil de TJSRetourner ' la page d'accueil de TJS

Méthode : Array.filter()

Retourne un tableau contenant les éléments qui vérifient la fonction filtration()

Syntaxe
Array tab.filter(Function filtration(element, [indice [, origine]])

Compatible tous navigateurs

Description
Crée et retourne un nouveau tableau contenant tous les éléments du tableau d'origine qui vérifient bien la fonction de filtration.
La fonction filtration() est exécutée sur chaque élément du tableau d'origine tab. Si elle retourne true, l'élément est inclus dans le nouveau tableau.

La fonction de filtration reçoit jusque trois paramètres :
- element est l'élément en cours de manipulation
- indice est le numéro d'indice de l'élément en cours
- origine est le tableau d'origine complet

Dans la même idée, la méthode every() retourne true si tous les éléments du tableau vérifient une fonction de condition.


Exemple 1 : Fonction de filtration
Code source
<script type="text/javascript">
var monTab=[10, 8, 9, 15, 655, 25, 3, 18, 22];
console.log(monTab);
console.log(monTab.filter(function(valeur) {
 if (valeur%5===0) {
   return true;
 }
 return false;
}));
</script>

Résultat
Emulation de la console
Explication
Retourne un nouveau tableau contenant uniquement les nombres divisibles par 5

Exemple 2 : Fonction de filtration fléchée
Code source
<script type="text/javascript">
console.log(monTab.filter(valeur => valeur%5===0 ? true : false));
</script>

Résultat
Emulation de la console
Explication
Même opération avec une construction de la fonction en syntaxe fléchée et opérateur ternaire, nettement plus compacte.

Exemple 3 : Eliminer les doublons d'un tableau
Code source
<script type="text/javascript">
 function filtrerDoublon(elt, indice, tabOrigine) {
   console.log("indice="+indice+" elt="+elt+" indexOf="+tabOrigine.indexOf(elt));
   if (tabOrigine.indexOf(elt)==indice) {
      /* Si la valeur de l'élément est trouvée à l'indice en cours, on le garde */    
      return true;
   } else {
      /* Si la valeur de l'élément est trouvée ailleurs, c'est un doublon à filtrer */
      return false;
   }
 }

 var tab=["TJS", Math.PI, 2000, 10, "TJS", 3.141592653589793];
 console.log(tab);
 console.log("Lancement du filtre à doublons");
 console.log(tab.filter(filtrerDoublon));
</script>

Résultat
Emulation de la console
Explication
La méthode filter() semble particulièrement adaptée pour filtrer les doublons d'un tableau.

La fonction filtrerDoublon() affiche le fonctionnement dans la console. Elle ne garde que le premier élément trouvé.

Voir aussi les ensemble Set pour la suppression des doublons.

Page en rapport
Le tutorial tableaux JavaScript
Page mise à jour le
QUERY 10
SELECT *, DATE_FORMAT(dt_insert, '%d/%m/%Y %H:%i' ) AS jour_insert, DATE_FORMAT(dt_maj, '%d/%m/%Y %H:%i' ) AS jour_maj FROM js_reference ORDER BY IDfather, name
SELECT * FROM js_navigateur ORDER BY ordre
SELECT * FROM js_version ORDER BY ID
SELECT * FROM js_reference WHERE phpfile="array.filter"
UPDATE js_reference SET nb_visi=nb_visi+1, nb_visi_delai=nb_visi_delai+1 WHERE ID='379'
SELECT * FROM js_navigateur ORDER BY ordre
SELECT js_equivalent_ressource.*, js_equivalent_language.language, js_equivalent_language.favico FROM js_equivalent_ressource, js_equivalent_language WHERE js_equivalent_ressource.idLanguage = js_equivalent_language.id AND js_equivalent_ressource.etat=1 AND js_equivalent_language.etat=1 AND js_equivalent_ressource.typeof='REF' AND js_equivalent_ressource.idRessource="379"
SELECT * FROM js_exemple WHERE ID='379' ORDER BY ordre
SELECT * FROM js_url WHERE ID='379' ORDER BY ordre
SELECT * FROM js_url WHERE ID='92' ORDER BY ordre

Troisième édition Tout JavaScript chez Dunod

Tout JavaScript le livre chez DunodEn savoir plus
Sortie le 4 janvier 2023

Version papier 29€90
Format électronique 22€99.

Commandez en ligne

Chercher une fonction, un objet, ...

Le graph des objets Javascript



Chargement
en cours...
Le 22/06/2025 15:12:13 sur php 7 en 55.52 ms