Az értékadás (=) az egyben kifejezés is. A kiértékelés jobbról balra halad. szia = világ = helloworld; jelentése szia = (világ = helloworld); Többszörös értékadásra nincs lehetőség. Egy értékadás bal oldalán csak változó, tömbelem, vagy egy objektum egy tulajdonsága lehet, míg a bal oldalon tetszőleges típusérték. Bár a Flash 5., vagy a későbbi verziókban az „=” egy értékadás operátor, és az == való az egyenlőség-vizsgálatra, a Flash 4.-ben az „=”-et numerikus egyenlőség-vizsgálatra lehetett használni. Így például egy Flash 4 fileban : Ezenkívül még számos értékadó operátor van: +=, -=, *=, /=, ... x = y; egyenlőség-vizsgálatnak a Flash 5.-ben a következő felel meg:
Blokkokat a { } jelpárossal adhatunk meg. A változó láthatóságában nem játszik szerepet. (Változó láthatósága csak függvényhíváskor változhat.) Így csak azokon a helyeken van szerepe, ahol csak egy utasítást tartalmazhat az adott rész. (ciklusmag, feltétel ág, ...)
With:
Használat: with(object:Object ) {utasítás(sorozat)ok}. Az object lehet bármilyen ActionScript objektum, illetve filmklip. A with utasítás nagyon jól használható, mikor egy objektum tagváltozóira, –függvényeire akarunk hivatkozni. Ha egy with-en belül akarjuk beállítani egy változó értékét, akkor annak már deklarálva kell lennie a blokkon kívül(vagy megadjuk a teljes elérési útvonalat).
Megjegyzés: Flash 5-nél régebbi verziókban a tellTarget utasítást lehet használni hasonló célokra. Későbbi verziókban ez már "depricated"
Ahhoz hogy a zárójelek közti utasításokban szereplő azonosítóknak megtalálja a fordító az értékét, egy scope-láncon keresztül halad végig, amely a következő felsorolás sorrendhelyes, specifikus bejárása :
Kétirányú elágazásra az if utasítás használható.
if (kifejezés) {
Nincs elseif, elif, ill. elsif, így az if-then-else problémát úgy oldották meg, hogy az else az utolsó ifhez tartozik.
Többirányú elágazást a switch utasítással lehet elérni. Szelektor típusa tetszőleges. A feltételeknek nem kell diszjunktnak lenni, a default ág megadása nem kötelező, és ha meg is adjuk, nem kötelező utolsóként.
Rácsorog a vezérlés a következő ágra, így a break utasítást kell használni, amikor ki szeretnénk lépni.
Mind az ifben mind a switchben lévő feltételnek logikai értéket kell visszaadni. A switch tetszőleges típusra működik, szigorú típusos egyenlőség esetén lép bele egy ágba.
Feltételes utasítások:
if (feltétel) {utasításblokk} [else {utasításblokk}]
switch (kifejezés) { case érték : {utasításblokk} [break;] ... [default : {utasításblokk}] }
Négyféle ciklus készítésére van lehetőségünk. Az első három a C++-ból jól ismert: while, for, do while ciklus. Mindhárom ciklusnál akkor lépünk ismét a ciklusmagba, hogyha a ciklusfeltétel igaz.
A negyedik ciklus a for (változó in objektum), ahol az adott objektum minden mezőjének nevén egyszer végigmegy a kijelölt ciklusváltozó és végrehajtódik a ciklusmag.
Ugrás: Goto a megszokott formában nincs, ám a moziklip időegyenesén lehet lépkedni a GotoAndPlay, GotoAndStop, NextFrame és PrevFrame utasítással. Ekkor a még aktuális frame-ben lévő kód lefut, és csak utána ugrik tovább. (Lásd az ide tartozó példát!)
Ciklusok
for ([inicializálás]; [ciklusfeltétel]; [ciklusléptetés]) {ciklusmag} while(ciklusfeltétel) {ciklusmag} do {ciklusmag} while(ciklusfeltétel)
Két iteratív ciklus található a nyelvben:
Indexek bejárása:
for (index in objektum) { trace(objektum[index]); }
Értékek bejárása:
for each (változó in objektum) { trace(változó); }
Lehetőség van a vezérlési szerkezetek koordinált megbontására. Erre alkalmasak a break, és a continue utasítások. A megszokott módon a break egy ciklusból való kiugrást teszi lehetővé, míg a continue egy feltételbe ágyazva a feltétel teljesüléskor az az iterációs lépés kimarad, de a ciklus tovább folyatódik.
Példa brake- re:
for (var i:Number = 0; i < aTitles.length; i++){ if(aTitles[i] == “ActionScript Bible”) { trace(“Title found.”); break; } }
for (var i:Number = -10; i < 10; i++){ if (i == 0){ continue; } trace(100/i); }