String.prototype.slice()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
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 courante n'est pas modifiée.
Exemple interactif
Syntaxe
chn.slice(indiceDebut[, indiceFin])
Paramètres
indiceDebut
-
L'indice base 0 auquel commencer l'extraction. Si négatif, il est traité comme (
longueurSource + indiceDebut
) oùlongueurSource
est la longueur de la chaine de caractères (par exemple, siindiceDebut
est -3, il sera traité commelongueurSource - 3
). SiindiceDebut
est supérieur à la longueur de la chaîne,slice()
renvoie une chaîne vide. indiceFin
-
Paramètre optionnel. Un indice base 0 avant lequel terminer l'extraction. Le caractère à cet indice ne sera pas inclus. Si
indiceFin
est absent,slice()
extraira jusqu'à la fin de la chaine de caractères. Si négatif, il sera traité comme (longueurSource + indiceFin
) oùlongueurSource
est la longueur de la chaine de caractères (par exemple s'il vaut-3
, il sera traité commelongueurSource - 3
)
Valeur retournée
Une nouvelle chaîne de caractères contenant la section extraite de la chaîne.
Description
slice()
extrait le texte d'une chaine de caractères et retourne une nouvelle chaîne de caractères. Les changements au texte dans une chaine de caractères n'affectent pas l'autre chaîne.
slice()
extrait jusqu'à indiceFin
, mais sans l'inclure. Par exemple, chn.slice(1, 4)
extrait du second caractère jusqu'au quatrième caractère (caractères d'indices 1, 2 et 3).
Par exemple, chn.slice(2, -1)
extrait du troisième caractère jusqu'à l'avant-dernier caractère de la chaine de caractères.
Exemples
Utilisation de slice()
pour créer une nouvelle chaîne de caractères
L'exemple suivant utilise slice()
pour créer une nouvelle chaîne de caractères.
var chn1 = "Le matin est sur nous.", // la longueur de chn1 est de 22
chn2 = chn1.slice(1, 8),
chn3 = chn1.slice(3, -2),
chn4 = chn1.slice(13),
chn5 = chn1.slice(30);
console.log(chn2); // SORTIE : e matin
console.log(chn3); // SORTIE : matin est sur nou
console.log(chn4); // SORTIE : sur nous.
console.log(chn5); // SORTIE : ""
Utilisation de slice()
avec des indices négatifs
L'exemple suivant utilise slice()
avec des indices négatifs.
var chn = "Le matin est sur nous.";
chn.slice(-3); // retourne "us."
chn.slice(-3, -1); // retourne "us"
chn.slice(0, -1); // retourne "Le matin est sur nous"
Dans l'exemple qui suit, on commence à chercher l'indice de début à partir de la fin de la chaîne avec l'argument -11
et on utilise un indice de fin positif avec 16
:
console.log(chn.slice(-11, 16)); // "st sur"
On utilise ensuite un indice de début positif (la recherche est effectuée depuis le début de la chaîne) et un indice de fin négatif pour parvenir au même résultat :
console.log(chn.slice(10, -5)); // "st sur"
Enfin, on utilise deux indices négatifs : la position de début et la position de fin sont recherchées à parti de la fin de la chaîne :
console.log(chn.slice(-11, -5)); // "st sur"
Spécifications
Specification |
---|
ECMAScript Language Specification # sec-string.prototype.slice |
Compatibilité des navigateurs
BCD tables only load in the browser