webForumDet fria alternativet

Dynamisk sökväg till variabel

Flash

3 svar · 282 visningar · startad av oskob

Medlem sedan maj 20021 558 inlägg
Frågan#1

Hejsan!
Hur gör man dynamiska sökvägar till variabler?
Typ:

while(count != 2) {

var1 = "hej";
var2 = "hej igen";
count = 0;

test.text = var[count];
count++;

}

Tack på förhand!

Medlem sedan juni 200546 inlägg
#2

För att komma åt variabler genom att dynamiskt skapa variabelnamn gör du såhär:

this["variabelnamn"]

I ditt fall blir det på följande sätt

count = 0;

while(count != 2)
{
    count++;

    var1 = "hej";
    var2 = "hej igen";

    test.text =  this["var" + count];
}

Notera att jag kastat runt lite andra saker också för att få loopen att fungera. Tilldelningen av 0 till varabeln count ligger nu utanför och inkrementeringen på första raden i loopen.

Medlem sedan maj 20021 558 inlägg
#3

Tackar!
Spelar det alltså roll var count++ ligger?

Medlem sedan juni 200546 inlägg
#4

++ inkrementerar en variabel. Eftersom du börjar med noll, när du sätter count = 0, och din första variabel börjar med ett så måste inkrementeringen ske innan du försöker läsa ut variabeln. Annars hade du läst ut var0, som inte finns och därför hade resulterat i undefined. Solklart? :)

271 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)