Anne Kaffeekanne: Object-Value via externer Variable ändern

Hallo,

Ich habe einen Platzhalter, der den Value eines Objekts speichert. Über diesen Platzhalter möchte ich jetzt auf das Objekt zugreifen, um genau diesen Value zu ändern:

var TestObjekt = {
	InhaltKey1 : [{InhaltValue: "Wert1"}],
	InhaltKey2 : [{InhaltValue: "Wert2"}]
	// ...
}
var Platzhalter = TestObjekt.InhaltKey1; // greift dynamisch auf verschiedene Inhalte zu, hier eben InhaltKey1

Was ich nun brauche ist im Endeffekt

// TestObjekt.InhaltKey = ***some new value***

nur aber eben über die Platzhalter Variable ausgedrückt, also ca. in die Richtung:

TestObjekt[Object.keys(Platzhalter)] // gibt "undefined" zurück, da keys von Platzhalter [da nicht Teil von TestObjekt] ja ["0"] ist, bzw. nie explizit definiert wurden

Erm... Hilfe?

Danke, Anne

  1. Hallo Anne,

    ganz warm, aber noch nicht heiß.

    Ich dachte, ich schick Dich einfach ins WIKI, aber von wegen, da stand das nicht so klar.

    Jetzt schon:

    JavaScript/Objekte - Eigenschaften und Methoden

    Es geht um den zweiten Teil, wo von assoziativen Arrays die Rede ist.

    Rolf

    --
    sumpsi - posui - clusi
    1. Sehr versteckte Antwort! 😀

      Aber danke für den Tipp. Schlussendlich hat mir eine for...in Schleife zum Siege verholfen.

      LG, Anne

      1. Hallo Anne,

        Vorsicht! Die for..in Schleife durchläuft nicht nur die Eigenschaften des Objekts, sondern auch die, die über den Prototypen bereitgestellt werden. Wenn deine Objekte keine Prototypen haben (das ähnelt der Vererbung im OOP), fällt es nicht auf.

        Wenn Du tatsächlich alle Eigenschaften des Objekts bearbeiten willst, ist for..in richtig. Das stand allerdings nicht in deinem Eröffnungsbeitrag.

        Rolf

        --
        sumpsi - posui - clusi