Rolf B: Object.keys() als STRING ausgeben?

Beitrag lesen

Hallo Gunnar,

Was aber, wenn ich "Key1", "Key2", ... als Strings und nicht ["Key1"], ["Key2"], [...] als Arrays auslesen möchte? (einfach toString() and that's it, oder geht das sauberer?)

toString() funktioniert im konkreten Fall, aber ob das die Antwort ist? Wie immer: Kommt drauf an. Die von Martin erwähnten Fallstricke sind reichlich da. Ich versuche das mal auszuformulieren.

  • ist sichergestellt, dass jedes Objekt in diesem Array genau ein Property enthält? Wenn nicht: Was ist bei 0 oder 2 Properties?
  • was repräsentieren diese Objekte? Worauf ich hinauswill: ist die Darstellung als { foo: "bar" } problemangemessen, oder könnte es sinnvoller sein, die Objekte als { name: "foo", value: "bar" } zu erzeugen. Um das zu bewerten, wäre es interessant zu wissen, wo und wie Du die Objekte noch verwendest.

Wenn sichergestellt ist, dass es immer genau ein Property gibt, kannst Du Martins Idee des Direktzugriffs auf das erste Element verwenden, also statt Object.keys(el).toString() nimmst Du Object.keys(el)[0].

Mit den name/value Objekten, die ich als Alternative angedacht habe, könntest Du el.name verwenden.

Rolf

--
sumpsi - posui - obstruxi