--- title: String.prototype.slice() slug: Web/JavaScript/Reference/Objets_globaux/String/slice tags: - Chaîne - JavaScript - Méthode - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/String/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 courante n'est pas modifiée.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
chn.slice(indiceDebut[, indiceFin])
indiceDebut
longueurSource + indiceDebut
) où longueurSource
est la longueur de la chaine de caractères (par exemple, si indiceDebut
est -3, il sera traité comme longueurSource - 3
). Si indiceDebut
est supérieur à la longueur de la chaîne, slice()
renvoie une chaîne vide.indiceFin
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é comme longueurSource - 3
)Une nouvelle chaîne de caractères contenant la section extraite de la chaîne.
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.
slice()
pour créer une nouvelle chaîne de caractèresL'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 22chn
2 =
chn1.slice(1, 8),
chn3 =
chn1.slice(3, -2),
chn4 =
chn1.slice(13),
chn5 =
chn1.slice(30); console.log(
chn2); // SORTIE :
e matinconsole.log(
chn3); // SORTIE : m
atin est sur nouconsole.log(
chn4); // SORTIE :
sur nous.console.log(
chn5); // SORTIE : ""
slice()
avec des indices négatifsL'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écification | Statut | Commentaire |
---|---|---|
{{SpecName('ES3')}} | {{Spec2('ES3')}} | Définition initiale. Implémentée dans JavaScript 1.2. |
{{SpecName('ES5.1', '#sec-15.5.4.13', 'String.prototype.slice')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES6', '#sec-string.prototype.slice', 'String.prototype.slice')}} | {{Spec2('ES6')}} | |
{{SpecName('ESDraft', '#sec-string.prototype.slice', 'String.prototype.slice')}} | {{Spec2('ESDraft')}} |
Le tableau de compatibilité de cette page a été généré à partir de données structurées. Si vous souhaitez contribuer aux données, regardez https://github.com/mdn/browser-compat-data et envoyez-nous une pull request.
{{Compat("javascript.builtins.String.slice")}}