Array.prototype.includes()
BaselineWidely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.
La méthodeincludes()
permet de déterminer si un tableau contient une valeur et renvoietrue
si c'est le cas,false
sinon.
Exemple interactif
const array1 = [1, 2, 3];console.log(array1.includes(2));// Expected output: trueconst pets = ['cat', 'dog', 'bat'];console.log(pets.includes('cat'));// Expected output: trueconsole.log(pets.includes('at'));// Expected output: false
Note :Cette méthode utilise l'algorithme de comparaisonSameValueZero qui fonctionne comme l'égalité stricte, à la différence queNaN
est ici égal à lui même.
Syntaxe
array.includes(élémentRecherché);array.includes(élémentRecherché, indiceDépart);
Paramètres
élémentRecherché
La valeur qu'on souhaite trouver dans le tableau (lorsqu'on manipule des caractères et des chaînes, la comparaison est sensible à la casse).
indiceDépart
FacultatifLa position du tableau à partir de laquelle commencer à chercher
élémentRecherché
. Si on utilise une valeur négative, la recherche commencera à partir de la fin du tableau (autrement dit à l'indicearray.length - indiceDépart
). La valeur par défaut est 0.
Valeur de retour
Unbooléen qui vauttrue
siélémentRecherché
est trouvé dans le tableau (à partir de l'indiceDépart
si celui-ci est indiqué). Les valeurs -0, +0 et 0 sont considérées comme équivalentes maisfalse
n'est pas considéré comme équivalent à 0.
Note :Pour être tout à fait précis,includes()
utilise l'algorithmeSameValueZero afin de déterminer si un élément donné est trouvé.
Exemples
[1, 2, 3].includes(2); // true[1, 2, 3].includes(4); // false[1, 2, 3].includes(3, 3); // false[1, 2, 3].includes(3, -1); // true[1, 2, NaN].includes(NaN); // true["a", "b", "c"].includes("c", 5); // false["a", "b", "c"].includes("c", -100); // true
indiceDépart
supérieur ou égal à la longueur du tableau
SIindiceDépart
est supérieur ou égal à la longueur du tableau, la méthode retournefalse
. Le tableau n'est pas parcouru.
var arr = ["a", "b", "c"];arr.includes("c", 3); // falsearr.includes("c", 100); // false
indiceDépart
strictement négatif
SiindiceDépart
est strictement négatif, l'indice de départ effectif est la somme entre la taille du tableau etindiceDépart
. Si cette somme est toujours négative, le tableau est intégralement parcouru.
// Le tableau a une taille de 3// indiceDépart vaut -2// L'indice de départ effectif vaut 3 + (-2) = 1var arr = ["a", "b", "c"];arr.includes("a", -2); // falsearr.includes("b", -2); // truearr.includes("c", -100); // true
Utilisation d'includes()
comme méthode générique
includes()
est une méthode générique : l'objet sur lequel elle est appelée ne doit pas nécessairement être un tableau. On peut l'utiliser sur des objets semblables à des tableaux (ex.arguments
ou des chaînes de caractères) :
function argumentsContientA() { return [].includes.call(arguments, "a");}console.log(argumentsContientA("a", "b", "c")); // trueconsole.log(argumentsContientA("d", "e", "f")); // false
Spécifications
Specification |
---|
ECMAScript® 2026 Language Specification # sec-array.prototype.includes |