Javascript: Zugriff auf Objekt (Array) durch Array-Notationszeichenfolge

Ich möchte auf das Objekt zugreifen, sofern nur der String-Pfad in Form eines Arrays bekannt ist.

1.) es gibt ein Objekt, wo

root["obj1"]["obj2"] = 1;

(im allgemeinen Fallroot["obj1"]...["objN"])

2.) Ich habe NUR den String objectPath bekannt:

var objectPath = 'root["obj1"]["obj2"]'

3.) Ich muss nicht nur das Objekt LESEN, sondern auch seinen Wert wie SETZEN

objectPath = 2;
//so root["obj1"]["obj2"] === 2

Wie ich es verstehe

eval () enthält möglicherweise einige Optionen, erhält jedoch den Wert und nicht die Variable.

man kann alle Objekte von root durchlaufen, in "root.obj1.obj2" konvertieren (was nicht der Fall ist, da "obj1" leicht "obj with spaces1" sein kann) und prüfen, ob der angegebene String dem aktuellen Objekt in der entspricht Schleife.

http://jsfiddle.net/ACsPn/

Weiterführender Link:Greifen Sie auf untergeordnete Objekteigenschaften mit einer Punktnotationszeichenfolge zu

Antworten auf die Frage(1)

Ihre Antwort auf die Frage