webForumDet fria alternativet

Actionscript fråga

1 svar · 328 visningar · startad av Stig

StigMedlem sedan dec. 2001146 inlägg
#1

Vad betyder det om man sätter något inom hakparanteser, eller varför gör man det. Så här tex.

_root["ant"+a] = 0;

mirandirMedlem sedan maj 2003750 inlägg
#2

Det brukar kallas för "associative array" eller "array-notation" och är en metod för att dynamiskt ange sökvägen till en variabel eller ett objekt.

Så detta:

var a = 1;
_root["ant" + a] = 0;

... är detsamma som:

_root.ant1 = 0;

Fördelen är att du måste inte på förhand veta det exakta namnet på det objekt du vill påverka/läsa av. Utan kan plocka ihop under runtime utifrån värden i variabler etc.

Vill du göra detta på flera nivåer måste du använda flera hakparenteser. Precis som med flerdimensionella array:er:

Detta:

var a = 1
var b = 2
_root["a" + a]["b" + b] = 1;

Är detsamma som:

_root.a1.b2 = 1;

/Mirandir

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)