Bevor Sie eine tiefe Kopie und flache Kopie verstehen, müssen Sie einige grundlegende Konzepte verstehen. Die im Speicher gespeicherten variablen Typen sind in Werttypen und Referenztypen unterteilt.
1. Speichermerkmale der Wertschöpfungszuweisung: Kopieren Sie alle Daten in der Variablen und speichern Sie sie auf eine neue Variable.
Zum Beispiel: var num = 123; var num1 = num;
Die in der Variablen gespeicherte Zahl lautet 123. Kopieren Sie dann die Daten mit einer Kopie, dh 123 Kopien. Dann gibt es 2 Arrays im Speicher; Das Zuweisen der Kopierdaten an NUM2 ist das Merkmal, dass es zwei Kopien der Daten im Speicher gibt. Dies kann als flache Kopie verstanden werden.
2. Zuordnung des Referenztyps.
var o = {name: 'zhang san'};
var obj = o;
Zuweisung bedeutet, eine Kopie der in der Variablen O gespeicherten Daten zu kopieren und dann die Daten zuzuweisen. Im Speicher befindet sich 1 Datenpunkt, und das von OBJ geänderte Namensattribut beeinflusst den Namen in O.
Wenn alle Referenzstrukturen der Daten in eine Kopie kopiert werden, sind die Daten unabhängig im Speicher und sind eine tiefe Kopie.
Wenn die Attribute des aktuellen Objekts nur beim Kopieren kopiert werden und die Attribute nicht berücksichtigt werden, handelt es sich um eine flache Kopie.
Kopieren: Kopieren Sie eine Kopie. Es bezieht sich auf das Kopieren von Objektdaten;
Bei der Erörterung der tiefen Kopie und der flachen Kopie müssen sichergestellt werden, dass die Eigenschaften des Objekts auch Referenztypen sind.
Die obige kurze Diskussion über die tiefe und flache objektorientierte Kopie und Kopie in JavaScript ist der gesamte Inhalt, den ich mit Ihnen teile. Ich hoffe, es kann Ihnen eine Referenz geben und ich hoffe, Sie können Wulin.com mehr unterstützen.