String in Variablennamen umwandeln
Paul
- javascript
0 Gunnar Bittersmann0 Paul
3 Kai345
Moin.
Wie kann ich einen String in einen Variablennamen umwandeln?
var a = obj.id;
document.getElementById('mapContainer').innerHTML = a;
Hier ist a z.B. 'Wasser'. Nun möchte ich, z.B. mit innerHTML (bitte keine Kommentare) die Variable mit dem Namen Wasser benutzen.
Danke,
Paul
@@Paul:
nuqneH
Hier ist a z.B. 'Wasser'. Nun möchte ich, z.B. mit innerHTML (bitte keine Kommentare) die Variable mit dem Namen Wasser benutzen.
Globale Variablen sind Eingenschaften des window-Objekts. Dann geht’s mit <http://de.selfhtml.org/javascript/objekte/forms.htm@title=Schema 4>:
var Wasser = "Wasser ist nass.";
var a = "Wasser";
alert (window[a]); // Wasser ist nass.
Qapla'
Vielen Dank Euch beiden!
[latex]Mae govannen![/latex]
Hier ist a z.B. 'Wasser'. Nun möchte ich, z.B. mit innerHTML (bitte keine Kommentare) die Variable mit dem Namen Wasser benutzen.
die einfachste Möglichkeit ist eval, aber die ist einfach zu gefährlich, denn wenn jemand JS-Code einschleust, wird dieser dann ausgeführt.
Eine globale Variable kann man anlegen mit window[a] , dann kannst du mit window[a] oder wenn du den Namen kennst mit window['wasser'] darauf zugreifen. Globale Variablen sind aber bäh.
Willst du einen andern Kontext, kannst du statt window ein leeres Objekt nehmen
var o = {};
Lesenden und schreibenden Zugriff dann mit o[a]
Stur lächeln und winken, Männer!
Kai