mat's løsning er (selvfølgelig) den rigtige. Hvis du ikke har købt
http://globe.dk/?action=detail&vare=FG227-7, så vil jeg da rekommandere det.
Og i de situationer, hvor this faktisk ikke er korrekt (for eksempel hvis det er en lokal variabel i en funktion) vil eval() være den rigtigt løsning:
antal1 = "forkert 1";
antal2 = "forkert 2";
antal3 = "forkert 3";
function test() {
var antal1 = "rigtig 1";
var antal2 = "rigtig 2";
var antal3 = "rigtig 3";
for(var i=1;i<=3;i++) {
trace(this["antal"+i]);
}
}
test();
Vil nemlig give det forkerte, hvor:
antal1 = "forkert 1";
antal2 = "forkert 2";
antal3 = "forkert 3";
function test() {
var antal1 = "rigtig 1";
var antal2 = "rigtig 2";
var antal3 = "rigtig 3";
for(i=0;i<=2;i++) {
trace(eval("antal"+i));
}
}
test();
Vil give de korrekte, lokale variabler.
--
Morten Barklund