Maison > interface Web > js tutoriel > Exemple d'opération de copie approfondie JS de tableaux et d'objets

Exemple d'opération de copie approfondie JS de tableaux et d'objets

coldplay.xixi
Libérer: 2020-07-29 17:36:55
avant
2412 Les gens l'ont consulté

Exemple d'opération de copie approfondie JS de tableaux et d'objets

L'exemple de cet article décrit l'opération de copie approfondie des tableaux et des objets JS. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

1. Copie complète de array

let arr = [
 undefined,
 function(){
  console.log(123); 
 },
 true,
 null,
 {
  name:"123",
  age:23
 }
];
// arr作为拷贝对象
Copier après la connexion

1. ) peut copier un tableau. Le tableau de classe est converti en un vrai tableau, il renvoie donc un nouveau tableau.

let arr1 = Array.from(arr);
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]
Copier après la connexion

2. Object.assign()

let arr1 = Object.assign([], arr)
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]
Copier après la connexion

Cette méthode peut également être utilisée comme copie complète de l'objet

3. 🎜>4 . Concat()

let arr1 = arr.slice(0);
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]
Copier après la connexion

5. Copie profonde de l'opérateur étendu

let arr1 = arr.concat();
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]
Copier après la connexion

Cette méthode peut également être utilisée comme copie profonde d'un objet

2. d'un objet

// let [...arr1] = arr; // 这两种都可以
let arr1 = [...arr];
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]
Copier après la connexion

Utilisez l'opérateur spread et la méthode Object.assign() pour copier en profondeur des objets

let obj = {
 name: "a",
 age: 20,
 sex: false,
 user: {
  a: 20,
  n: "b"
 },
 f: function(){
  return 1;
 },
 u: undefined,
 n: null
}
Copier après la connexion

Recommandations d'apprentissage associées :

Tutoriel vidéo javascript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:jb51.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal