Comment vérifier si une chaîne contient une sous-chaîne en JavaScript

JavaScript offre de nombreuses façons de vérifier si une chaîne contient une sous-chaîne. Apprenez la méthode canonique et découvrez également toutes les options dont vous disposez, en utilisant du JavaScript brut

Vérifier si une chaîne contient une sous-chaîne est l'une des tâches les plus courantes dans tout langage de programmation.


JavaScript propose différentes manières d'effectuer cette opération.

Le plus simple, et aussi le plus canonique à l'avenir, consiste à utiliser leincludes()méthode sur une chaîne:

'a nice string'.includes('nice') //true

Cette méthode a été introduite dansES6 / ES2015.

Il est pris en charge dans tous les navigateurs modernes sauf Internet Explorer:

Browser Support for includes

Pour l'utiliser sur tous les navigateurs, utilisezPolyfill.ioou un autre polyfill dédié.

includes()accepte également un deuxième paramètre facultatif, un entier qui indique la position où commencer la recherche:

'a nice string'.includes('nice') //true
'a nice string'.includes('nice', 3) //false
'a nice string'.includes('nice', 2) //true

Alternative pré-ES6 à includes ():indexOf()

Pré-ES6, la manière courante de vérifier si une chaîne contient une sous-chaîne était d'utiliserindexOf, qui est une méthode de chaîne qui renvoie -1 si la chaîne ne contient pas la sous-chaîne. Si la sous-chaîne est trouvée, elle renvoie l'index du caractère qui commence la chaîne.

Aimerincludes(), le deuxième paramètre définit le point de départ:

'a nice string'.indexOf('nice') !== -1 //true
'a nice string'.indexOf('nice', 3) !== -1 //false
'a nice string'.indexOf('nice', 2) !== -1 //true

Téléchargez mon gratuitManuel du débutant JavaScript


Plus de tutoriels js: