JavaScript ist eine leistungsstarke Programmiersprache, die viele Methoden zum Bearbeiten von Objekten bietet. In JavaScript bezieht sich ein Objekt auf eine Datenstruktur, die aus Schlüssel-Wert-Paaren besteht. Manchmal müssen wir ein Objekt kopieren, anstatt es einfach zu referenzieren. In diesem Artikel besprechen wir die verschiedenen Möglichkeiten zum Kopieren von Objekten in JavaScript.
Methode 1: Verwenden Sie Object.assign()
Verwenden Sie die Methode Object.assign(), um alle Eigenschaften eines oder mehrerer Quellobjekte in das Zielobjekt zu kopieren. Diese Methode kann auch zum Kopieren von Objekten verwendet werden.
Zum Beispiel haben wir ein Objekt, das Mitarbeiterinformationen enthält:
let employee = { name: 'John Doe', age: 25, position: 'Developer' };
Wir können Object.assign() verwenden, um dieses Objekt zu kopieren:
let newEmployee = Object.assign({}, employee);
In diesem Beispiel verwenden wir das leere Objekt als Zielobjekt und machen es zum ersten Parameter werden übergeben. Das Quellobjekt (Mitarbeiter) ist der zweite Parameter. Wenn wir diesen Code ausführen, wird ein neues Objekt „newEmployee“ erstellt, das alle Eigenschaften und Werte des Mitarbeiterobjekts enthält.
Wenn wir mehrere Objekte kopieren möchten, können wir sie der Reihe nach an die Methode Object.assign() übergeben, wie unten gezeigt:
let newEmployee = Object.assign({}, employee1, employee2, employee3);
Methode 2: Verwenden Sie den Spread-Operator
Der Spread-Operator (.. .), die an verschiedenen Orten eingesetzt werden können. Wir können den Spread-Operator in einem Array oder Objekt verwenden, um seine Elemente zu verteilen. Verwenden Sie den Spread-Operator in einem Objekt, um alle Eigenschaften vom Quellobjekt zum Zielobjekt zu kopieren.
Zum Beispiel können wir den Spread-Operator verwenden, um das Mitarbeiterobjekt zu kopieren:
let newEmployee = { ...employee };
In diesem Beispiel erstellen wir ein neues Objekt „newEmployee“ mit allen vom Mitarbeiterobjekt verteilten Eigenschaften. Das „…“ ist hier die Syntax des Spread-Operators. Es extrahiert alle Eigenschaften aus dem Mitarbeiterobjekt und fügt sie dem neuen Objekt newEmployee hinzu. Dieses neue Objekt ist ein völlig unabhängiges Objekt und keine Referenz auf das Mitarbeiterobjekt.
Methode 3: Verwenden Sie JSON.parse() und JSON.stringify()
In JavaScript können wir auch die Methoden JSON.parse() und JSON.stringify() verwenden, um ein Objekt zu kopieren. Wir können das Objekt in einen JSON-String konvertieren und den String dann in ein neues Objekt analysieren.
Zum Beispiel haben wir ein Objekt:
let employee = { name: 'John Doe', age: 25, position: 'Developer' };
Wir können die Methoden JSON.parse() und JSON.stringify() verwenden, um dieses Objekt zu kopieren:
let newEmployee = JSON.parse(JSON.stringify(employee));
Die Kombination dieser beiden Methoden kann beim Kopieren von Objekten sehr nützlich sein . Beachten Sie jedoch, dass keine speziellen Datentypen kopiert werden dürfen, die Funktionen oder Objektreferenzen enthalten oder nicht in JSON-Strings konvertiert werden können.
Methode 4: Verwenden Sie die Deep-Copy-Methode
Wenn keine der oben genannten Methoden Ihre Anforderungen erfüllen kann, können Sie die Deep-Copy-Methode verwenden. Die Deep-Copy-Methode kopiert das gesamte Objekt, einschließlich Objektreferenzen und Unterobjekten. Es gibt viele Bibliotheken, die Deep-Copy-Methoden bereitstellen, z. B. Lodash, Underscore.js usw. Hier stellen wir die Verwendung der Lodash-Bibliothek zum Kopieren eines Objekts vor.
Zuerst müssen Sie die Lodash-Bibliothek installieren. In Node.js können Sie zum Installieren den folgenden Befehl verwenden:
npm install lodash
Im Browser können Sie den folgenden CDN-Link verwenden:
<script src="https://cdn.jsdelivr.net/lodash/4.17.15/lodash.min.js"></script>
Nach der Installation und Einführung der Lodash-Bibliothek können Sie zum Erstellen die cloneDeep()-Methode verwenden die ursprüngliche Kopie des Objekts:
let newObject = _.cloneDeep(originalObject);
In diesem Beispiel kopiert die cloneDeep()-Methode das originalObject-Objekt vollständig und gibt dann das neue Objekt newObject zurück.
Fazit
Die oben genannten sind die verschiedenen Möglichkeiten, Objekte in JavaScript zu kopieren. Jede Methode hat je nach Ihren Bedürfnissen ihre Vor- und Nachteile. Bevor Sie diese Methoden anwenden, ist es wichtig, zu verstehen, wie jede Methode funktioniert, und festzustellen, welche für Ihre spezifische Situation am besten geeignet ist. Für welche Methode Sie sich auch entscheiden, stellen Sie sicher, dass Sie verstehen, wann Sie eine Objektreferenz kopieren und wann Sie das Objekt selbst kopieren.
Das obige ist der detaillierte Inhalt vonSo kopieren Sie ein Objekt in Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!