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

Implementierung von Socket-Optionen in der Linux-Netzwerkprogrammierung

Socket-Optionsfunktion Funktion: Methoden zum Les...

vue $set implementiert die Zuweisung von Werten zu Array-Sammlungsobjekten

Vue $set Array-Sammlungsobjektzuweisung In der be...

So verweisen Sie direkt auf Vue und Element-UI in HTML

Der Code sieht folgendermaßen aus: <!DOCTYPE h...

Detaillierte Erklärung des HTML-Bereichs-Tags

Der <area>-Tag definiert einen Bereich in e...

Zusammenfassung des Front-End-Wissens im Gokudō-Spiel

Hintergrund Zu Beginn meines Japanisch-Lernens fi...

So umbrechen Sie das HTML-Titelattribut

Als ich vor ein paar Tagen ein Programm schrieb, w...

Vue implementiert das gleichzeitige Einstellen mehrerer Countdowns

In diesem Artikelbeispiel wird der spezifische Co...

So ändern Sie die Größe von Partitionen in CentOS7

Gestern habe ich jemandem bei der Installation ei...

Win10 Installation von MySQL 5.7 MSI-Version des Tutorials mit Bildern und Text

Ich habe es im MSI-Format installiert, hauptsächl...

So verwenden Sie video.js in Vue zum Abspielen von Videos im M3U8-Format

Inhaltsverzeichnis 1. Installation 2. Einführung ...

So ändern Sie das ursprüngliche Passwort von MySQL auf dem MAC

Problembeschreibung: Ich habe einen Mac gekauft u...

Grundlegende Kenntnisse zur MySQL-Wurmreplikation

Würmer replizieren sich, wie der Name schon sagt,...

So ändern Sie das Root-Passwort in einem Container mit Docker

1. Verwenden Sie den folgenden Befehl, um das SSH...