Auf unbekannte Objekteigenschaft zugreifen
Kai345
- javascript
[latex]Mae govannen![/latex]
Ich habe ein Objekt, z.B. dieses hier:
var ob = {
eigen: "wert"
}
Dieses Objekt hat immer _genau ein_ Eigenschaft-Wert-Paar, allerdings mit mir vorher nicht bekannten Namen und Wert.
Es könnte also auch theoretisch sein, daß das Objekt
var ob = {
baggins: "bilbo"
}
wäre.
Ich möchte nun einer Variablen „a“ den Namen der Eigenschaft (hier: „eigen“ bzw. „baggins“) zuweisen.
Zur Zeit löse ich dies mit einer leeren for..in-Schleife
for (var a in ob) {};
und somit enthält a den gewünschte Eigenschaftnamen.
Allerdings finde ich diese Methode unelegant und unintuitiv (man wäre ohne Kommentar geneigt, die Zeile zu löschen, da sie auf den ersten Blick sinnlos zu sein scheint), daher meine Frage: Kann ich einen unbekannten Eigenschaftsnamen noch auf andere Weise einer Variablen zuweisen?
Cü,
Kai
Allerdings finde ich diese Methode unelegant und unintuitiv (man wäre ohne Kommentar geneigt, die Zeile zu löschen, da sie auf den ersten Blick sinnlos zu sein scheint), daher meine Frage: Kann ich einen unbekannten Eigenschaftsnamen noch auf andere Weise einer Variablen zuweisen?
Nein. Ich weiß nicht warum du das so machst, aber du hast recht es ist unelegant und unintuitiv.
Struppi.
Hi,
Kann ich einen unbekannten Eigenschaftsnamen noch auf andere Weise einer Variablen zuweisen?
ja, indem Du ihn in einem bekannten Eigenschaftsnamen speicherst. Ich halte Dein Datenmodell für überarbeitungswürdig.
Cheatah
[latex]Mae govannen![/latex]
Kann ich einen unbekannten Eigenschaftsnamen noch auf andere Weise einer Variablen zuweisen?
ja, indem Du ihn in einem bekannten Eigenschaftsnamen speicherst. Ich halte Dein Datenmodell für überarbeitungswürdig.
*seufz* Das ist wahr.
Es war halt sehr spät bzw. früh ...
dann mache ich eben aus
var ob = {
foo: bar
}
var ob = {
wert1: foo,
wert2: bar
}
Cü,
Kai
Hi,
var ob = {
wert1: foo,
wert2: bar
}
für "wert1" bietet sich "name" an, für "wert2" "value".
Cheatah
--
X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes
Hi,
var a = "eigen";
var ob[a] = "wert";
alert(ob.eigen); // => "wert"
Aber Cheatah hat natürlich auch recht.
Gruß!
Mahlzeit,
var a = "eigen";
var ob[a] = "wert";
Wenn ich Kai345 richtig verstanden habe, weiß er genau das nicht.
alert(ob.eigen); // => "wert"
Wie kann er also auf eine Eigenschaft zugreifen, deren Namen er nicht kennt?
Aber Cheatah hat natürlich auch recht.
Grundsätzlich schon - aber manchmal muss man eben mit Daten bzw. vorhandenen Strukturen selbiger einfach nur arbeiten und hat keinen Einfluss auf sie.
MfG,
EKKi