Ein kurzer Vortrag über das Klonen von JavaScript

Ein kurzer Vortrag über das Klonen von JavaScript

1. Oberflächliches Klonen

Beim flachen Klonen können keine Arrays und Objekte kopiert werden

var obj = {
    Name: "abs",
    Alter: '18',
    Geschlecht: „männlich“
}
var obj1 = {}
Funktion Klon(Ursprung,Ziel) {
    Ziel = Ziel || {}; //Verhindert, dass Benutzer das Ziel betreten
    für(var k in Origin){
        Ziel[k] = Ursprung[k];
    }
}
Klon(Objekt,Objekt1);

2. Tiefes Klonen

Bestimmen Sie zunächst, was es ist: ein primitiver Wert, ein Array oder ein Objekt, und behandeln Sie sie separat

  • Über Objekte iterieren
  • Der Originalwert wird direkt copy
  • Kein primitiver Wert. Beurteilen Sie, ob es sich um ein Array oder ein Objekt handelt.
  • Ist ein Array, um ein leeres Array zu erstellen
  • Es ist ein Objekt, das ein leeres Objekt erstellt
  • Nachdem es eingerichtet ist, iterieren Sie über den Inhalt des ursprünglichen Objekts oder Arrays
  • Rekursion
var obj = {
    Name: 'lin',
    Alter: '18',
    Geschlecht: männlich,
    Karte: [1,2,3,4],
    Gattin : {
        Name: "bcsds",
        Sohn: {
            Name: "aaa"
        },
        Alter: '23'
    }
}
var obj1 = {}
//Der Originalwert und der Rückgabewert des Objekt-Arrays typeof sind unterschiedlich function deepClone(origin,target) {
    Ziel = Ziel || {};
    für(var k in Ursprung) {
        wenn (origin.hasOwnProperty(k)) {
            wenn(Typvon(Herkunft[k]) == 'Objekt') {
                wenn(Object.prototype.toString.call(origin[k]) == '[Objekt-Array]') {
                    Ziel[k] = [];
                }anders {
                    Ziel[k] = {};
                }
                deepClone(Ursprung[k],Ziel[k]);
            }anders {
                Ziel[k] = Ursprung[k];
            }
        }
    }
}
deepClone(Objekt,Objekt1);
Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der Prinzipien des tiefen und flachen Klonens von JavaScript-Arrays und Nicht-Array-Objekten
  • Detaillierte Beispiele für Shallow Cloning und Deep Cloning in JavaScript
  • Vergleich und Beispielanalyse von flachem und tiefem Klonen in JavaScript
  • Beispiel einer Deep-Cloning-Methode für JS-Objekte
  • Analyse von Beispielen für Deep Cloning von JS-Objekten
  • Analyse von JS-Erweiterungsklassen, geklonten Objekten und Instanzen gemischter Klassen
  • JS-Klon, Attribut, Array, Objekt, Funktionsinstanzanalyse
  • Detaillierte Erklärung und Beispiel für das JavaScript Deep Clone-Objekt
  • Einfache Implementierungsmethode zum Klonen von Javascript-Arrays
  • Einführung in gängige Methoden zum Klonen von Objekten und Arrays in js

<<:  Beispiel-Tutorial zur Verwendung der Summenfunktion in MySQL

>>:  Docker-Netzwerkmodus und Konfigurationsmethode

Artikel empfehlen

Detaillierte Erklärung des CSS3-Rotationswürfelproblems

3D-Koordinatenkonzept Wenn sich ein Element dreht...

So zeigen Sie historische Befehle in Linux an und führen sie aus

Historische Befehle anzeigen und bestimmte Befehl...

Über das Vue Virtual Dom-Problem

Inhaltsverzeichnis 1. Was ist virtueller Dom? 2. ...

Verwenden von CSS3 zum Implementieren eines Schriftfarbverlaufs

Beim Verwenden von Animation.css habe ich festges...

Suchmaschinenfreie Sammlung von Website-Einträgen

1: Anmeldeeingang der Baidu-Website Website: http:...

Importieren Sie die CSV-Datei mit Navicat in MySQL

In diesem Artikel wird der spezifische Code zum I...

Erste Schritte mit der Konvertierung von Vue in React

Inhaltsverzeichnis Design Komponentenkommunikatio...

So erstellen Sie ein Docker-Repository mit Nexus

Das mit dem offiziellen Docker-Register erstellte...

Analyse der Linux-Bootsystemmethoden

Dieser Artikel beschreibt, wie man das Linux-Syst...

Einführung in die wichtigsten Browser und ihre Kernel

Trident-Kern: IE, MaxThon, TT, The World, 360, So...

14 Möglichkeiten zum Erstellen von Website-Inhalten, die Ihre Besucher fesseln

Wenn ich im Internet surfe, sehe ich oft Websites...

Beispiel-Tutorial zur JavaScript-Typerkennungsmethode

Vorwort JavaScript ist eine der am häufigsten ver...