String.prototype.includes()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
La méthode includes()
détermine si une chaîne de caractères est contenue dans une autre et renvoie true
ou false
selon le cas de figure.
Exemple interactif
Syntaxe
str.includes(chaîneRecherchée);
str.includes(chaîneRecherchée, position);
Paramètres
chaîneRecherchée
-
Une chaîne à rechercher dans la chaîne courante.
position
Facultatif-
La position dans la chaîne à partir de laquelle commencera la recherche. La valeur par défaut de
position
est 0.
Valeur de retour
true
si la chaîne de caractères contient la sous-chaîne recherchée, false
sinon.
Description
Cette méthode détermine si une chaîne de caractères est contenue dans une autre.
Sensibilité à la case
includes()
est sensible à la casse. Par exemple, l'expression suivante nous retournera false
:
"Baleine bleue".includes("baleine"); // false
Exemples
Utiliser includes()
const str = "Être ou ne pas être, telle est la question.";
console.log(str.includes("Être")); // true
console.log(str.includes("question")); // true
console.log(str.includes("pléonasme")); // false
console.log(str.includes("Être", 1)); // false
console.log(str.includes("ÊTRE")); // false
console.log(str.includes("")); // true
Prothèse d'émulation (polyfill)
Cette méthode a été ajoutée à la spécification ECMAScript 2015 et n'est peut-être pas encore disponible dans toutes les implémentations JavaScript.
Cependant, vous pouvez facilement polyfill cette méthode pour de vieux navigateurs :
if (!String.prototype.includes) {
String.prototype.includes = function (search, start) {
"use strict";
if (search instanceof RegExp) {
throw TypeError("first argument must not be a RegExp");
}
if (start === undefined) {
start = 0;
}
return this.indexOf(search, start) !== -1;
};
}
Spécifications
Specification |
---|
ECMAScript Language Specification # sec-string.prototype.includes |
Compatibilité des navigateurs
BCD tables only load in the browser