Méthode indexOf
La méthode indexOf effectue une recherche d'un élément
dans un tableau. Dans le premier paramètre,
on spécifie l'élément à rechercher.
La méthode renvoie l'indice du premier élément trouvé,
ou -1 si l'élément n'existe pas.
Le deuxième paramètre optionnel de la méthode
définit la position à partir de laquelle
commencer la recherche.
Syntaxe
tableau.indexOf(élément, [à partir de où commencer]);
Exemple
Trouvons la position du premier trois dans le tableau :
let arr = [1, 2, 3, 3, 3, 4, 5];
let res = arr.indexOf(3);
console.log(res);
Résultat de l'exécution du code :
2
Exemple
Supposons maintenant que l'élément vérifié ne soit pas dans le tableau :
let arr = [1, 2, 3, 4, 5];
let res = arr.indexOf(6);
console.log(res);
Résultat de l'exécution du code :
-1
Exemple
Commençons la recherche à partir d'une position donnée :
let arr = [1, 2, 3, 4, 5, 3];
let res = arr.indexOf(3, 4);
console.log(res);
Résultat de l'exécution du code :
5
Erreur fréquente
Parfois, la méthode est utilisée pour vérifier la présence d'un élément dans un tableau. Dans ce cas, il est facile de faire une erreur si la vérification est effectuée de la manière suivante :
if (arr.indexOf(3)) {
console.log(true);
} else {
console.log(false);
}
Cette vérification fonctionnera pour
toutes les positions, sauf la position zéro - car
elle est interprétée comme false.
Il est correct de vérifier la présence d'un élément de la manière suivante :
if (arr.indexOf(3) !== -1) {
console.log(true);
} else {
console.log(false);
}
Voir aussi
-
la méthode
includes,
qui vérifie la présence d'un élément dans un tableau -
la méthode
lastIndexOf,
qui recherche les éléments depuis la fin -
la méthode
at,
qui renvoie un élément du tableau par son indice -
la méthode
match,
qui recherche des correspondances dans une chaîne -
la méthode
search,
qui effectue une recherche