Detaillierte Erklärung des Kopierobjekts von jQuery

Detaillierte Erklärung des Kopierobjekts von jQuery

<!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>

Zusammenfassen

Dieser 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:
  • jQuery verwendet $.extend(true,object1, object2); zur Implementierung einer Deep-Copy-Objektmethodenanalyse
  • Einfaches Beispiel für eine tiefe Kopie eines JSON-Objekts mit jQuery
  • Kopieren und Aufteilen des Werts von Tabellendaten in jQuery
  • Flache und tiefe Kopie von $.extend von jQuery

<<:  Webdatenspeicherung: Cookie, UserData, SessionStorage, WebSqlDatabase

>>:  MySQL-Startfehler beheben: FEHLER 2003 (HY000): Keine Verbindung zum MySQL-Server auf „localhost“ möglich (10061)

Artikel empfehlen

Zwei Möglichkeiten zum Einführen von SVG-Symbolen in Vue

So führen Sie SVG-Symbole in Vue ein Methode 1 zu...

jQuery Treeview-Baumstrukturanwendung

In diesem Artikelbeispiel wird der Anwendungscode...

js canvas realisiert kreisförmige Wasseranimation

In diesem Artikelbeispiel wird der spezifische Co...

JavaScript-Objekte (Details)

Inhaltsverzeichnis JavaScript-Objekte 1. Definiti...

Einführung in die Generierung von Kubernetes-Zertifikaten mit OpenSSL

Kubernetes unterstützt drei Arten der Authentifiz...

Tools zur Bildoptimierung für Webseiten und Tipps zur Verwendung

Als grundlegendes Element einer Webseite sind Bil...

Detaillierte Erklärung zum Ein- und Aussteigen aus dem Docker-Container

1 Starten Sie den Docker-Dienst Zuerst müssen Sie...

Details zum Prototypmodus des Javascript-Entwurfsmusters

Inhaltsverzeichnis 1. Prototyp-Modus Beispiel 1 B...

Detailliertes Beispiel für MySQL-Joint-Tabellen-Update-Daten

1.MySQL UPDATE JOIN-Syntax In MySQL können Sie di...

CentOS-System-RPM-Installation und -Konfiguration von Nginx

Inhaltsverzeichnis CentOS RPM-Installation und Ko...