4.1 Introduction aux chaînes de caractères
Les chaînes de caractères en JavaScript sont des séquences de caractères et représentent l'un des principaux types de données. Tu peux créer des chaînes en utilisant des guillemets simples ('texte'), des guillemets doubles ("texte"), ou des backticks (`texte`).
Exemples de chaînes :
let singleQuote = 'Hello, World!';
let doubleQuote = "Hello, World!";
let backticks = `Hello, World!`;
Tu peux appeler les méthodes suivantes sur un objet chaîne :
Méthode | Description |
---|---|
length | Retourne la longueur de la chaîne |
charAt(index) | Retourne le caractère à la position spécifiée |
toUpperCase() | Convertit la chaîne en majuscules |
toLowerCase() | Convertit la chaîne en minuscules |
indexOf(substring) | Retourne l'index de la première occurrence de la sous-chaîne ou -1 si non trouvé |
includes(substring) | Vérifie si la chaîne contient la sous-chaîne spécifiée, retourne true ou false |
slice(start, end) | Extrait une partie de la chaîne et retourne une nouvelle chaîne |
replace(searchValue, newValue) | Remplace la sous-chaîne spécifiée par une nouvelle sous-chaîne |
split(separator) | Divise la chaîne en un tableau de sous-chaînes en utilisant le séparateur spécifié |
trim() | Supprime les espaces au début et à la fin de la chaîne |
4.2 Principales méthodes de manipulation des chaînes
Exemples d'utilisation des méthodes
1. Propriété length
Retourne la longueur de la chaîne :
let str = 'Hello';
console.log(str.length); // 5
2. Méthode charAt(index)
Retourne le caractère situé à la position spécifiée :
let str = 'Hello';
let result = str.charAt(1);
console.log(result); // 'e'
3. Méthodes toUpperCase() et toLowerCase():
Convertissent la chaîne en majuscules ou minuscules :
let str = 'Hello';
console.log(str.toUpperCase()); // 'HELLO'
console.log(str.toLowerCase()); // 'hello'
4. Méthode indexOf(substring)
Retourne l'index de la première occurrence de la sous-chaîne ou -1 si non trouvée :
let str = 'Hello, world!';
let result = str.indexOf('world');
console.log(result); // 7
5. Méthode includes(substring)
Vérifie si la chaîne contient la sous-chaîne spécifiée, retourne true ou false :
let str = 'Hello, world!';
let result = str.includes('world');
console.log(result); // true
6. Méthode trim()
Supprime les espaces au début et à la fin de la chaîne :
let str = ' Hello, world! ';
console.log(str.trim()); // 'Hello, world!'
7. Méthode replace(searchValue, newValue)
Remplace la sous-chaîne spécifiée par une nouvelle sous-chaîne :
let str = 'Hello, world!';
console.log(str.replace('world', 'JavaScript')); // 'Hello, JavaScript!'
8. Méthode split(separator)
Divise la chaîne en un tableau de sous-chaînes en utilisant le séparateur spécifié :
let str = 'Hello, world!';
let words = str.split(' ');
console.log(words); // ['Hello,', 'world!']
9. Méthode substring(start, end)
Retourne la sous-chaîne entre deux index :
let str = 'Hello, world!';
console.log(str.substring(0, 5)); // 'Hello'
10. Méthode substr(start, length)
Retourne la sous-chaîne à partir de l'index spécifié et de la longueur indiquée :
let str = 'Hello, world!';
console.log(str.substr(0, 5)); // 'Hello'
11. Méthode slice(start, end)
Extrait une partie de la chaîne et retourne une nouvelle chaîne :
let str = 'Hello, world!';
console.log(str.slice(0, 5)); // 'Hello'
12. Méthode startsWith(substring)
Vérifie si la chaîne commence par la sous-chaîne spécifiée, retourne true
ou false
:
let str = 'Hello, world!';
console.log(str.startsWith('Hello')); // true
13. Méthode endsWith(substring)
Vérifie si la chaîne se termine par la sous-chaîne spécifiée, retourne true
ou false
:
let str = 'Hello, world!';
console.log(str.endsWith('world!')); // true
14. Méthode repeat(count)
Retourne une nouvelle chaîne contenant le nombre spécifié de copies de la chaîne originale :
let str = 'Hello';
console.log(str.repeat(3)); // 'HelloHelloHello'
let str2 = '-';
console.log(str2.repeat(30)); // '---------------------------------------------------------------'
4.3 Chaîne nouvelle génération
Les chaînes modèles (template strings) ont été ajoutées récemment à JavaScript. Elles offrent un moyen plus pratique et lisible de manipuler du texte par rapport aux chaînes ordinaires. Elles sont encadrées par des backticks (`) et supportent l’interpolation d’expressions et le texte multiligne.
Syntaxe :
`chaîne nouvelle génération`
Exemple :
Le littéral de modèle greeting
est créé en utilisant des backticks.
const greeting = `Hello, World!`;
console.log(greeting); // "Hello, World!"
Principales caractéristiques des chaînes modèles :
- Interpolation d’expressions : les chaînes modèles permettent d’insérer des expressions et des variables à l’intérieur de la chaîne avec
${}
- Texte multiligne : les chaînes modèles supportent le texte multiligne sans nécessiter de caractères spéciaux pour le retour à la ligne
- Expressions intégrées : tu peux utiliser n’importe quelle expression JavaScript, y compris des fonctions, à l’intérieur des chaînes modèles
Voyons des exemples d’utilisation des chaînes modèles.
Interpolation d’expressions
Les chaînes modèles permettent d’insérer facilement les valeurs des variables et les résultats d’expressions à l’intérieur de la chaîne :
let name = "Alice";
let age = 30;
let greeting = `Hello, ${name}! You are ${age} years old.`;
console.log(greeting); // "Hello, Alice! You are 30 years old."
Dans cet exemple, les variables name
et age
sont insérées dans la chaîne en utilisant ${}
.
Texte multiligne
Les chaînes modèles facilitent la création de chaînes multiligne sans devoir utiliser
de caractères de retour à la ligne (\n
) :
let multiLine = `Lorem ipsum odor, consectetuer adipiscing elit.
Sit lorem mattis eget maximus.`;
console.log(multiLine);
Expressions intégrées
Tu peux utiliser n’importe quelle expression JavaScript, y compris des appels de fonctions, à l’intérieur des chaînes modèles :
let a = 5;
let b = 10;
let result = `The sum of ${a} and ${b} is ${a + b}.`;
console.log(result); // "The sum of 5 and 10 is 15."
function getGreeting(name) {
return `Hello, ${name}!`;
}
let greeting = `${getGreeting("Bob")}`;
console.log(greeting); // "Hello, Bob!"
C'est mieux de ne pas appeler de fonctions à l'intérieur des chaînes, mais si tu en as vraiment envie, tu peux le faire.
GO TO FULL VERSION