Forcer JavaScript à copier en profondeur une chaîne

Tahseen Tauseef 12 octobre 2023
  1. Qu’est-ce qu’une copie en profondeur
  2. Comment copier une chaîne en JavaScript
  3. Comment copier en profondeur une chaîne en JavaScript
Forcer JavaScript à copier en profondeur une chaîne

Cet article explique ce qu’est une copie en profondeur, comment copier une chaîne et copier en profondeur une chaîne en JavaScript. Nous aborderons également la principale différence entre eux.

Qu’est-ce qu’une copie en profondeur

Dans une copie complète, l’ensemble de l’objet chaîne est dupliqué et stocké dans un autre objet chaîne. Tout le contenu de l’objet chaîne d’origine est copié et stocké dans le nouvel objet chaîne.

Cependant, en copie, l’adresse d’origine est stockée et accessible chaque fois que nous accédons à l’objet chaîne copié.

Comment copier une chaîne en JavaScript

Lorsque vous copiez une chaîne, son adresse est stockée dans la variable String spécifiée en JavaScript. Regardons ce segment de code pour mieux comprendre le concept.

let original_string = 'Hello';
var string_copy = (' ' + original_string).slice(1);

Dans ce segment de code, comme vous pouvez le voir, il y avait une variable nommée original_string, qui avait une valeur de chaîne Hello.

La chaîne d’origine est utilisée comme référence après un espace ' '. Cette concaténation se traduit par une copie de chaîne dans l’implémentation du navigateur.

Comment copier en profondeur une chaîne en JavaScript

Dans l’explication mentionnée du segment de code de copie profonde, nous avons utilisé une fonction prototype de chaîne appelée tranche, alors expliquons d’abord la fonction prototype slice().

La méthode slice est utilisée en JavaScript pour récupérer une partie d’une chaîne en tant que nouvelle chaîne sans modifier la chaîne d’origine. Voyons ce segment de code où nous avons utilisé slice :

let str = 'Sliced_String';
let res = str.slice(0, 5);
console.log(res);

Production :

Slice

Les cinq premiers caractères de la chaîne ont été extraits et affichés sur la console en tant que sortie. Notez ici que les arguments ici sont indexés 0 ; par conséquent, le 6ème caractère n’est pas extrait.

Sinon, vous ne pouvez pas fournir d’arguments qui renvoient la chaîne entière en tant que nouvelle chaîne.

Maintenant, revenons à l’explication de la copie profonde.

Comme mentionné ci-dessus, la copie en profondeur dans JavaScript duplique l’intégralité de l’objet de chaîne JavaScript et le stocke dans une constante ou une variable de chaîne spécifiée. Regardons ce segment de code où nous avons profondément copié un objet de chaîne JavaScript dans une constante.

const str = 'I am showing an example';
const new_str = str.slice();

console.log(new_str);

Dans le segment de code ci-dessus, le programme n’utilisera pas la référence de la chaîne d’origine mais copiera chaque caractère de la chaîne d’origine dans la nouvelle variable de chaîne.

Comme expliqué ci-dessus, la fonction slice() a extrait la chaîne entière de la constante str et l’a renvoyée sous la forme d’une nouvelle chaîne dans la constante new_str. Cette nouvelle constante a été affichée en sortie dans la dernière ligne du segment de code à l’aide d’un console.log().

Article connexe - JavaScript String