Hi,
nachdem mein Problem gelöst ist, hab ich noch eine Frage, wozu eventuell hier jemand schon eine Lösung kennt.
Ein Zugriff auf Variablen, deren Namen dynamisch erzeugt ist, erfolgt normalerweise mittels eckigen Klammern
Code:
variable1 = "value1";
variable2 = "value2";
function getVariableValue(number)
{
return window["variable"+number];
}
getVariableValue(1);
getVariableValue(2);
Wie mach ich das aber mit einer privaten Variablen in einer "Klasse"
Code:
function MyClass()
{
var variable1 = "value1";
var variable2 = "value2";
function getVariableValue(number)
{
// Folgende Möglichkeiten funktionieren nicht
// return this["variable"+number];
// return MyClass["variable"+number];
}
}
var obj = new MyClass();
obj.getVariableValue(1);
obj.getVariableValue(2);
Momentan hab ich mir beholfen, indem ich die Variablen zusätzlich in ein Array gepackt habe, was nur funktioniert, weil die Variablen HTML Elemente enthielten und ich nur deren Status brauchte.
Eine Lösung mittels "eval" funktioniert auch, allerdings wie sagt man allgemein: "eval ist evil"
Weiss jemand eine schöne möglichkeit?
Grüße
True