Heim  >  Artikel  >  Web-Frontend  >  Wie können Sie vorhandene Objekteigenschaften mithilfe der Destrukturierung in ES6 ändern?

Wie können Sie vorhandene Objekteigenschaften mithilfe der Destrukturierung in ES6 ändern?

DDD
DDDOriginal
2024-10-30 21:53:02580Durchsuche

How Can You Modify Existing Object Properties Using Destructuring in ES6?

Erweiterte Objektdestrukturierung

In ES6 ist Destrukturierung eine Syntax, die es Ihnen ermöglicht, Werte aus einem Array oder Objekt in einzelne Variablen zu entpacken. Obwohl die Destrukturierung unglaublich praktisch ist, kann sie eingeschränkt sein, wenn Sie einem vorhandenen Objekt Werte zuweisen möchten.

Stellen Sie sich das folgende Szenario vor:

var foo = {
  x: "bar",
  y: "baz"
}
var oof = {}

Angenommen, Sie möchten das übertragen x- und y-Eigenschaften von foo bis oof mithilfe von Destrukturierung. Ein einfacher Versuch könnte so aussehen:

oof{x,y} = foo

Das wird jedoch nicht funktionieren. Wie können Sie also vorhandene Objekteigenschaften mithilfe der Destrukturierung ändern?

Eine mögliche Lösung

Obwohl dies nicht der eleganteste Ansatz ist, können Sie eine Kombination aus Destrukturierung und Zuweisung verwenden das gewünschte Ergebnis erzielen:

({x: oof.x, y: oof.y} = foo);

Dadurch werden die x- und y-Eigenschaften von foo gelesen und sie den entsprechenden Eigenschaften auf oof zugewiesen.

Alternative Ansätze

Alternative Ansätze zum Aktualisieren von Objekteigenschaften umfassen:

oof.x = foo.x;
oof.y = foo.y;

oder

['x', 'y'].forEach(prop => oof[prop] = foo[prop]);

Diese Ansätze können je nach Ihren Vorlieben expliziter und lesbarer sein.

Das obige ist der detaillierte Inhalt vonWie können Sie vorhandene Objekteigenschaften mithilfe der Destrukturierung in ES6 ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn