La différence entre String.slice et String.substring en JavaScript
-
Qu’est-ce que
String
etprototype
en JavaScript -
Qu’est-ce que
slice
etsubstring
en JavaScript -
Quelles sont les similitudes entre
slice
etsubstring
en JavaScript -
Quelles sont les différences entre
slice
etsubstring
en JavaScript
Dans cet article de didacticiel, nous discuterons de ce qu’est une tranche et une sous-chaîne en JavaScript et ce qui les différencie et ce qui ne l’est pas ; les questions suivantes seront abordées dans cet article :
- Qu’est-ce que la chaîne et le prototype
- Qu’est-ce que
slice
etsubstring
- Quelles sont les similitudes entre
slice
etsubstring
- Quelles sont les différences entre
slice
etsubstring
Qu’est-ce que String
et prototype
en JavaScript
Commençons par discuter de l’objet String
. L’objet chaîne est utilisé pour représenter une séquence de caractères, et il est couramment utilisé avec des données qui doivent être représentées sous forme de texte.
Remarque : les valeurs primitives ne peuvent pas avoir de propriétés ou de méthodes.
JavaScript traite les valeurs primitives comme des objets en les enveloppant dans un “encapsuleur d’objet” spécial qui fournit des fonctionnalités supplémentaires telles que des méthodes et des propriétés d’assistance. Chaque type primitif a son encapsuleur d'objet
; le type de chaîne est appelé String
.
Concentrons notre attention sur prototype
, un prototype
est une propriété globale avec tous les objets JavaScript. Il permet d’ajouter de nouvelles méthodes et propriétés aux objets existants.
function footballClub(name, stadium, founded) {
this.name = name;
this.stadium = stadium;
this.founded = founded;
}
footballClub.prototype.firstTeamPlayers = 11;
const FCB = new footballClub('FC Barcelona', 'Camp Nou', 1899);
console.log(FCB.firstTeamPlayers);
// logs 11
Production :
11
Dans l’exemple ci-dessus, chaque instance de footballClub
aura la propriété firstTeamPlayers
définie sur 11
. De même, la propriété prototype
permet d’ajouter de nouvelles propriétés et méthodes aux chaînes.
Qu’est-ce que slice
et substring
en JavaScript
slice
et substring
sont des propriétés prototypes qui existent sur toutes les chaînes JavaScript sous la forme de fonctions. Les fonctions slice
et substring
extraient une partie d’une chaîne et la renvoient comme une nouvelle chaîne. La méthode slice
ne modifie pas la chaîne
d’origine.
Il prend deux arguments, le premier argument spécifie l’index de départ à partir duquel commencer l’extraction (l’index commence à 0) et le deuxième argument spécifie l’index de fin de la chaîne (l’index de fin n’est pas inclus dans le cadre de l’extraction)
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(3, 8);
let substringStr = str.substring(3, 8);
console.log(slicedStr) // logs: na be
console.log(substringStr) // logs: na be
Production :
na be
na be
Quelles sont les similitudes entre slice
et substring
en JavaScript
Si start
est égal à stop
, slice
et substring
renvoient une chaîne vide.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(8, 8);
let substringStr = str.substring(9, 8);
console.log(slicedStr) // logs:
console.log(substringStr) // logs:
Production :
Si stop
(deuxième argument) n’inclut pas à la fois slice
et substring
, extrait les caractères jusqu’à la fin de la chaîne.
let str = "Gonna be extracted,Help!";
let slicedStr = str.slice(3);
let substringStr = str.substring(3);
console.log(slicedStr) // logs: na be extracted,Help!
console.log(substringStr) // logs: na be extracted,Help!
Production :
na be extracted,Help!
na be extracted,Help!
Si l’argument start
ou stop
est supérieur à la longueur de la chaîne, la longueur de la chaîne sera utilisée à la place de l’argument passé.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(1, 100);
let substringStr = str.substring(1, 100);
console.log(slicedStr) // logs: onna be extracted,Help!
console.log(substringStr) // logs: onna be extracted,Help!
Production :
onna be extracted,Help!
onna be extracted,Help!
Quelles sont les différences entre slice
et substring
en JavaScript
Si l’argument start
est supérieur à l’argument stop
dans slice
, il renverra une chaîne vide, tandis que substring
échangera ces deux arguments si tel est le cas.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(8, 3);
let substringStr = str.substring(8, 3);
console.log(slicedStr) // logs:
console.log(substringStr) // logs: na be
Production :
na be
Si l’argument start
ou l’argument stop
est négatif ou est NaN
, il est traité comme si sa valeur était 0
dans substring
tandis que dans slice
si l’argument start
est négatif, il définit le caractère de la fin de la chaîne.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(-1);
let substringStr = str.substring(-1);
console.log(slicedStr) // logs: !
console.log(substringStr) // logs: Gonna be extracted,Help!
Production :
!
Gonna be extracted,Help!
Article connexe - JavaScript String
- Obtenir le dernier caractère d'une chaîne en JavaScript
- Transformer une chaîne en une date en JavaScript
- Obtenir le premier caractère d'une chaîne en JavaScript
- Convertir un tableau en chaîne en JavaScript
- Vérifier l'égalité des chaînes en JavaScript
- Convertir un tableau en chaîne sans virgule en JavaScript