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

javascripttableau.indexOf(élément, [à partir de où commencer]);

Exemple

Trouvons la position du premier trois dans le tableau :

javascriptlet arr = [1, 2, 3, 3, 3, 4, 5];
let res = arr.indexOf(3);

console.log(res);

Résultat de l'exécution du code :

javascript2

Exemple

Supposons maintenant que l'élément vérifié ne soit pas dans le tableau :

javascriptlet arr = [1, 2, 3, 4, 5];
let res = arr.indexOf(6);

console.log(res);

Résultat de l'exécution du code :

javascript-1

Exemple

Commençons la recherche à partir d'une position donnée :

javascriptlet arr = [1, 2, 3, 4, 5, 3];
let res = arr.indexOf(3, 4);

console.log(res);

Résultat de l'exécution du code :

javascript5

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 :

javascriptif (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 :

javascriptif (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