Heim > Artikel > Web-Frontend > Wie erweitere ich ein Objekt mithilfe des Schlüsselpfads in JavaScript?
In JavaScript können Sie ein Objekt „flachen“, indem Sie eine flache Kopie davon erstellen. Dies ist nützlich, um einen Snapshot eines Objekts zu erstellen, kann jedoch zu Problemen führen, wenn das Objekt später geändert wird. Wenn Sie die Glättung eines Objekts aufheben müssen, können Sie den Pfad des Schlüssels verwenden, um die ursprüngliche Struktur wiederherzustellen.
Wenn das Objekt reduziert wird, werden die Schlüssel zu einer einzigen Zeichenfolge verkettet. Mit dieser Zeichenfolge können Sie Objekte erweitern, indem Sie Objekte mit denselben Schlüsseln und Werten erstellen.
Betrachten Sie zum Beispiel das folgende Objekt.
var obj = { "foo.bar": "baz", "foo.qux": "quux" };
Sie können ein Objekt erweitern, indem Sie ein Objekt mit denselben Schlüsseln und Werten erstellen.
<!doctype html> <html> <head> <title>Examples</title> </head> <body> <div id="result1">Original Object:</div><br/> <div id="result2">After Unflatten:</div> <script> var obj = { "foo.bar": "baz", "foo.qux": "quux" }; var unflattenedObj = {}; for (var key in obj) { var value = obj[key]; var path = key.split("."); var current = unflattenedObj; for (var i = 0; i < path.length - 1; i++) { var part = path[i]; current[part] = current[part] || {}; current = current[part]; } current[path[path.length - 1]] = value; } document.getElementById("result1").innerHTML += JSON.stringify(obj); document.getElementById("result2").innerHTML += JSON.stringify(unflattenedObj); console.log(unflattenedObj) </script> </body> </html>
Das Entflachen eines Objekts kann aus mehreren Gründen nützlich sein. Erstens hilft es Ihnen, doppelte Schlüssel zu vermeiden. Wenn zwei Schlüssel mit demselben Namen vorhanden sind, werden diese beim Reduzieren des Objekts überschrieben. Zweitens hilft es Ihnen, die ursprüngliche Struktur des Objekts zu bewahren. Dies kann wichtig sein, wenn Sie ein Objekt an eine Funktion übergeben müssen, die ein bestimmtes Format erfordert.
Das Aufheben der Glättung eines Objekts ist einfach. Erstellen Sie einfach ein Objekt mit denselben Schlüsseln und Werten. Dies ist nützlich, um doppelte Schlüssel zu vermeiden und die ursprüngliche Objektstruktur beizubehalten.
Das obige ist der detaillierte Inhalt vonWie erweitere ich ein Objekt mithilfe des Schlüsselpfads in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!