<!DOCTYPE html> <html lang="de"> <Kopf> <meta charset="UTF-8"> <meta name="viewport" content="width=Gerätebreite, Anfangsmaßstab=1.0"> <meta http-equiv="X-UA-kompatibel" content="ie=edge"> <title>Dokument</title> <script src="jquery.min.js"></script> <Skript> $(Funktion() { //1, normale Kopie, oberflächliche Kopie standardmäßig var targetObj = {}; var obj = { ID: 1, Name: "Andy" }; $.extend(targetObj, obj); // Kopiersyntax, kopiere die Attribute und Attributwerte in obj in ein leeres Objekt von targetObj console.log(targetObj); // Das Ausgabeergebnis ist der Inhalt des obj-Objekts // 2. Wenn das kopierte Objekt Attribute und Attributwerte enthält var targett = { ID: 0, gshg: 55 }; var objrr = { ID: 1, Name: "Andy" }; $.extend(zielt, objrr); console.log(targett); // Wenn die Eigenschaften im kopierten Objekt targett mit den Eigenschaften im kopierten Objekt objrr übereinstimmen, überschreiben die Eigenschaftswerte in objrr die Eigenschaftswerte in targett // Wenn sich die Eigenschaften im kopierten Objekt targett von den Eigenschaften im kopierten Objekt objrr unterscheiden, werden sie nicht überschrieben und die Eigenschaften im kopierten Objekt objrr kommen erst später // 3. Flache Kopie, wenn das kopierte Objekt Objekte enthält var taytuj = { ID: 0, Nachricht: { Geschlecht: 'männlich' } }; var return = { ID: 1, Name: "Andy", Nachricht: { Alter: 18 } }; $.extend(true, true, rete); Konsole.log(taytuj); // Ausführungsprozess: //1. Beide Objekte befinden sich im Speicherstapel, und das Objekt msg: {age: 18} im Rete-Objekt wird im Speicherheap abgelegt. In der flachen Kopie überschreibt das Objekt msg: {age: 18} im Rete-Objekt das Objekt msg: {sex: 'male'} des Taytu-Objekts, und der Attributwert wird zu einem Hexadezimalwert, der auf das Objekt msg: {age: 18} im Speicherheap zeigt. Zu diesem Zeitpunkt haben die Nachrichten der beiden Objekte im Stapelbereich dieselbe Hexadezimaladresse, die auf das Objekt msg: {age: 18} im Speicherheap zeigt. Wenn also die flache Kopie abgeschlossen ist, ändert sich, solange sich einer der Nachrichtenattributwerte in den beiden Objekten ändert, auch der Attributwert der anderen Nachricht. //Flache Kopie: //1. Wenn die Attributnamen gleich sind, überschreibt das kopierte Objekt das kopierte Objekt und die Reihenfolge ist immer die, die zuletzt kam. //2. Wenn die Attributnamen unterschiedlich sind, werden sie zusammengeführt. //Deep Copy: //1. Wenn die Attributnamen gleich sind, überschreiben die Attribute und Attributwerte des kopierten Objekts die Attribute und Attributwerte des kopierten Objekts und die Sortierung erfolgt immer vom späteren zum höheren. //2. Wenn die Attributnamen unterschiedlich sind, werden sie zusammengeführt. //3. Wenn das kopierte Objekt und das Objekt innerhalb des kopierten Objekts denselben Objektnamen, aber unterschiedliche Attributnamen haben, werden sie zusammengeführt und nicht überschrieben. }) </Skript> </Kopf> <Text> </body> </html> ZusammenfassenDieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalt auf 123WORDPRESS.COM lesen können! Das könnte Sie auch interessieren:
|
<<: Webdatenspeicherung: Cookie, UserData, SessionStorage, WebSqlDatabase
In diesem Artikel wird der spezifische Code von j...
1. ROW_NUMBER() Definition: Die Funktion ROW_NUMB...
Like bedeutet auf Chinesisch „wie“, aber wenn es ...
<br />Die Lösungsschritte sind wie folgt: St...
CSS3Bitte Schauen Sie sich diese Website selbst a...
Vorwort In diesem Kapitel werden grundlegende Lin...
Inhaltsverzeichnis 1. Logbezogene Dienste 2. Geme...
Inhaltsverzeichnis Fallbeispiel Lösung des Proble...
Brotli ist ein neues Datenformat, das eine um 20 ...
Index Condition Pushdown (ICP) wird in MySQL 5.6 ...
In einer Tabelle können Sie die Farbe des oberen ...
Um die Wirkung direkt zu sehen, wurde ein Rechtsk...
Dieser Artikel dient zur Aufzeichnung der Install...
Inhaltsverzeichnis veranschaulichen 1. Aktivieren...
In einem aktuellen Projekt musste ich die Funktio...