Méthodes de chaîne JavaScript
Les méthodes de chaîne vous aident à travailler avec des chaînes.
Méthodes et propriétés de chaîne
Les valeurs primitives, comme "John Doe", ne peuvent pas avoir de propriétés ou de méthodes (car ce ne sont pas des objets).
Mais avec JavaScript, les méthodes et les propriétés sont également disponibles pour les valeurs primitives, car JavaScript traite les valeurs primitives comme des objets lors de l'exécution des méthodes et des propriétés.
Longueur de la chaîne JavaScript
La length
propriété renvoie la longueur d'une chaîne :
Exemple
let txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = txt.length;
Extraction de parties de cordes
Il existe 3 méthodes pour extraire une partie d'une chaîne :
slice(start, end)
substring(start, end)
substr(start, length)
Tranche de chaîne JavaScript ()
slice()
extrait une partie d'une chaîne et renvoie la partie extraite dans une nouvelle chaîne.
La méthode prend 2 paramètres : la position de départ et la position de fin (fin non incluse).
Cet exemple découpe une partie d'une chaîne de la position 7 à la position 12 (13-1) :
Exemple
let str = "Apple, Banana, Kiwi";
let part = str.slice(7, 13);
Noter
JavaScript compte les positions à partir de zéro.
La première position est 0.
La deuxième position est 1.
Si un paramètre est négatif, la position est comptée à partir de la fin de la chaîne.
Cet exemple découpe une partie d'une chaîne de la position -12 à la position -6 :
Exemple
let str = "Apple, Banana, Kiwi";
let part = str.slice(-12, -6);
Si vous omettez le deuxième paramètre, la méthode découpera le reste de la chaîne :
Exemple
let part = str.slice(7);
ou, à compter de la fin :
Exemple
let part = str.slice(-12);
Sous-chaîne JavaScript()
substring()
est similaire à slice()
.
La différence est qu'il substring()
ne peut pas accepter les index négatifs.
Exemple
let str = "Apple, Banana, Kiwi";
let part = str.substring(7, 13);
Si vous omettez le deuxième paramètre, substring()
découpera le reste de la chaîne.
Substr de chaîne JavaScript ()
substr()
est similaire à slice()
.
La différence est que le deuxième paramètre spécifie la longueur de la partie extraite.
Exemple
let str = "Apple, Banana, Kiwi";
let part = str.substr(7, 6);
Si vous omettez le deuxième paramètre, substr()
découpera le reste de la chaîne.
Exemple
let str = "Apple, Banana, Kiwi";
let part = str.substr(7);
Si le premier paramètre est négatif, la position compte à partir de la fin de la chaîne.
Exemple
let str = "Apple, Banana, Kiwi";
let part = str.substr(-4);
Remplacement du contenu de la chaîne
La replace()
méthode remplace une valeur spécifiée par une autre valeur dans une chaîne :
Exemple
let text = "Please visit Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
Noter
La replace()
méthode ne change pas la chaîne sur laquelle elle est appelée.
La replace()
méthode renvoie une nouvelle chaîne.
Par défaut, la replace()
méthode remplace uniquement la première correspondance :
Exemple
let text = "Please visit Microsoft and Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
Par défaut, la replace()
méthode est sensible à la casse. Écrire MICROSOFT (avec des majuscules) ne fonctionnera pas :
Exemple
let text = "Please visit Microsoft!";
let newText = text.replace("MICROSOFT", "W3Schools");
Pour remplacer l'insensible à la casse, utilisez une expression régulière avec un /i
indicateur (insensible) :
Exemple
let text = "Please visit Microsoft!";
let newText = text.replace(/MICROSOFT/i, "W3Schools");
Noter
Les expressions régulières sont écrites sans guillemets.
Pour remplacer toutes les correspondances, utilisez une expression régulière avec un /g
indicateur (correspondance globale) :
Exemple
let text = "Please visit Microsoft and Microsoft!";
let newText = text.replace(/Microsoft/g, "W3Schools");
Noter
Vous en apprendrez beaucoup plus sur les expressions régulières dans le chapitre Expressions régulières JavaScript .
Conversion en majuscules et minuscules
Une chaîne est convertie en majuscule avec toUpperCase()
:
Une chaîne est convertie en minuscule avec toLowerCase()
:
Chaîne JavaScript toUpperCase()
Exemple
let text1 = "Hello World!";
let text2 = text1.toUpperCase();
Chaîne JavaScript toLowerCase()
Exemple
let text1 = "Hello World!"; // String
let text2 = text1.toLowerCase(); // text2 is text1
converted to lower
Chaîne JavaScript concat()
concat()
joint deux chaînes ou plus :
Exemple
let text1 = "Hello";
let text2 = "World";
let text3 = text1.concat(" ", text2);
La concat()
méthode peut être utilisée à la place de l'opérateur plus. Ces deux lignes font la même chose :
Exemple
text = "Hello" + " " + "World!";
text = "Hello".concat(" ", "World!");
Noter
Toutes les méthodes de chaîne renvoient une nouvelle chaîne. Ils ne modifient pas la chaîne d'origine.
Formellement dit :
Les chaînes sont immuables : les chaînes ne peuvent pas être modifiées, seulement remplacées.
Trim de chaîne JavaScript()
La trim()
méthode supprime les espaces des deux côtés d'une chaîne :
Exemple
let text1 = " Hello World! ";
let text2 = text1.trim();
Remplissage de chaîne JavaScript
ECMAScript 2017 a ajouté deux méthodes String : padStart
et padEnd
pour prendre en charge le remplissage au début et à la fin d'une chaîne.
Chaîne JavaScript padStart()
Exemple
let text = "5";
let padded = text.padStart(4,0);
Prise en charge du navigateur
padStart()
est une fonctionnalité ECMAScript 2017.
Il est pris en charge dans tous les navigateurs modernes :
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
padStart()
n'est pas pris en charge dans Internet Explorer.
Chaîne JavaScript padEnd()
Exemple
let text = "5";
let padded = text.padEnd(4,0);
Prise en charge du navigateur
padEnd()
est une fonctionnalité ECMAScript 2017.
Il est pris en charge dans tous les navigateurs modernes :
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
padEnd()
n'est pas pris en charge dans Internet Explorer.
Extraction de caractères de chaîne
Il existe 3 méthodes pour extraire les caractères de chaîne :
charAt(position)
charCodeAt(position)
- Accès à la propriété [ ]
Chaîne JavaScript charAt()
La charAt()
méthode renvoie le caractère à un index (position) spécifié dans une chaîne :
Exemple
let text = "HELLO WORLD";
let char = text.charAt(0);
Chaîne JavaScript charCodeAt()
La charCodeAt()
méthode renvoie l'unicode du caractère à un index spécifié dans une chaîne :
La méthode renvoie un code UTF-16 (un entier compris entre 0 et 65535).
Exemple
let text = "HELLO WORLD";
let char = text.charCodeAt(0);
Accès à la propriété
ECMAScript 5 (2009) autorise l'accès aux propriétés [ ] sur les chaînes :
Exemple
let text = "HELLO WORLD";
let char = text[0];
Noter
L'accès à la propriété peut être un peu imprévisible :
- Il fait ressembler les chaînes à des tableaux (mais ils ne le sont pas)
- If no character is found, [ ] returns undefined, while charAt() returns an empty string.
- It is read only. str[0] = "A" gives no error (but does not work!)
Example
let text = "HELLO WORLD";
text[0] = "A"; // Gives no error, but does not work
Converting a String to an Array
If you want to work with a string as an array, you can convert it to an array.
JavaScript String split()
A string can be converted to an array with the split()
method:
Example
text.split(",") // Split on commas
text.split(" ") // Split on spaces
text.split("|") // Split on pipe
If the separator is omitted, the returned array will contain the whole string in index [0].
If the separator is "", the returned array will be an array of single characters:
Example
text.split("")
Complete String Reference
For a complete String reference, go to our:
Complete JavaScript String Reference.
The reference contains descriptions and examples of all string properties and methods.