8- L’objet global JavaScript String, propriétés et méthodes
L’objet String
gère les chaînes de caractères. Le constructeur String()
possède deux propriétés et une trentaine de méthodes.

Le constructeur String() ne possède que deux propriétés : une propriété length et, bien évidemment, une propriété prototype comme tout objet.
La propriété length va nous permettre d’obtenir la longueur d’une chaine de caractères. Cette longueur est exprimée en points de code (appelées « codets ») sur la base du format UTF-16.
Les méthodes de l’objet String
Le constructeur String()
dispose d’une trentaine de méthodes. Nous allons étudier celles qui me semblent les plus utiles ici.
· La méthode includes()
La méthode includes()
permet de déterminer si une chaine de caractères est inclue dans une autre. Cette méthode prend l’expression (la chaine) à rechercher en argument.
Si la chaine passée en argument est trouvée dans la chaine dans laquelle on effectue la recherche, includes()
renvoie le booléen true
. Dans le cas contraire, la méthode renvoie le booléen false
.
Attention : cette méthode est sensible à la casse, ce qui signifie qu’une lettre majuscule et une lettre minuscule correspondent à deux entités différentes pour includes()
.
· La méthode substring()
La méthode substring()
retourne une sous-chaîne de la chaîne courante à partir d’un indice de départ.
Cette méthode demande un indice de départ en argument obligatoire qui va servir à indiquer la position de départ de la sous-chaine. On va également pouvoir passer un deuxième indice facultatif pour préciser une position de fin pour notre sous-chaine.
· Les méthodes indexOf() et lastIndexOf()
La méthode indexOf() permet de déterminer la position de la première occurrence d’un caractères ou d’une chaine de caractères dans une chaîne de caractères de base.
Cette méthode va prendre l’expression à rechercher dans la chaine de caractères en argument et va renvoyer la position à laquelle cette expression a été trouvée la première fois dans la chaine si elle est trouvée ou la valeur -1 si l’expression n’a pas été trouvée dans la chaine.
On va également pouvoir passer un deuxième argument optionnel à indexOf() qui correspond à l’endroit où on souhaite faire démarrer la recherche dans la chaine. Par défaut, la recherche se fait dans toute la chaine.
· La méthode slice()
La méthode slice() extrait une section d’une chaine de caractères et la retourne comme une nouvelle chaine de caractères. La chaîne de caractères de départ n’est pas modifiée.
On doit fournir en argument de départ obligatoire la position de départ dans la chaine de caractères de départ où doit démarrer l’extraction. On peut également passer en deuxième argument optionnel la positon où l’extraction doit s’arrêter.
· La méthode replace()
La méthode replace() nous permet de rechercher une expression dans une chaine de caractères et de la remplacer par une autre.
On va passer deux arguments à cette méthode : l’expression à rechercher, et l’expression de remplacement.
La méthode replace() va renvoyer une nouvelle chaine de caractères avec les remplacements faits. La chaine de caractères de départ ne sera pas modifiée.
· Les méthodes toLowerCase() et toUpperCase()
La méthode toLowerCase() retourne une chaine de caractères en minuscules.
A l’inverse, la méthode toUpperCase() retourne une chaine de caractères en majuscules.
· La méthode trim()
La méthode trim() supprime les espaces ou les « blancs » en début et en fin de chaîne. Cette méthode va s’avérer très pratique lorsqu’on voudra nettoyer des données pour ensuite effectuer des opérations dessus.
Cette méthode renvoie une nouvelle chaine de caractères sans blancs ni au début ni à la fin. Elle ne modifie pas la chaine de caractères de départ.