ActionScript 3.0 giver udviklere mulighed for at implementere komplekse strømme af animation i Flash-applikationer og film. Loops er blandt de mest nyttige og fælles strukturer i AS3 scripts . Loop funktioner kan du gentage gennem datastrukturer og foretage gentagne behandling uden at skulle gentage linjer kode. AS3 tilbyder en række sløjfer , som hver især er egnet til en anden type opgave . For Loop
"for" loop udfører gentagne behandling ved hjælp af en tæller variabel og en betingelse. Følgende kodeeksempel viser en grundlæggende "for" loop : var counter : int , for ( counter = 0; counter < 10; counter + +) { trace ( "Løkke :" + counter) ;}
denne løkke vil output numeriske værdier fra nul til ni . Når koden ind i løkken tællervariablen sat til nul . Hver gang løkken gentages , kontrollerer programmet tællervariablen . Hvis variablen er stadig mindre end ti , indholdet af løkken udfører , så tælleren variablen øges , tilføjer en værdi af en til det . Den betingede test udføres derefter igen for at kontrollere værdien af tælleren . Når værdien når op på 10 , forarbejdning bevæger sig forbi løkken.
For In Loop
" i " loop tillader programmer at gentage gennem datastrukturer såsom arrays . Følgende kode viser : var fruitCollection : Array = [" apple ", " banan " , "orange ", " melon "] , for (var frugt : String i fruitCollection ) { trace ( " Frugt: " + frugt + " = " + fruitCollection [ frugt ] );}
Denne kode vil udsende hvert element i array i sving . Der er ikke behov for at oprette et betinget test kontrollere længden af array og tælleren værdi som AS3 automatisk stopper, når array strukturen er opbrugt.
For Each In Loop < br >
" for hver " loop også gennemløber samlinger , men snarere end at bruge indeksværdier som henvisninger til positioner inden datastrukturer såsom arrays , den henter elementet værdier selv. Følgende kodeeksempel viser : var fruitCollection : Array = [" apple ", " banan " , "orange ", " melon "] , for hver (var fruitString i fruitCollection ) { trace ( " Frugt: " + fruitString ) . }
p Der er ingen grund til at bruge indeksværdi inde i dette loop, som " for hver" sløjfe automatisk den element ved hver position i strukturen
< br > mens loop
", mens " loop tillader dig at udføre behandlingen , mens nogle betingelsen forbliver sandt. Ligesom "for" loop bruger ", mens " loop en betinget test , som følger : var tæller : int = 0 , mens ( counter < 10 ) { trace ( "Løkke : " + counter ) counter + + ; }
Denne løkke har samme effekt som eksempel "for" loop, men en anden implementering. Tælleren initialiseres til nul, inden løkken begynder , så den betingede test bestemmer, om sløjfen indholdet udfører hver gang . Koden inde i loop stigninger tælleren, som den sidste linje i behandling .
Do While Loop
" gøre, mens " loop svarer til ", mens " , løkke , men tillader programmører at sikre sløjfen indholdet udfører mindst én gang . Følgende kodeeksempel viser : var counter : int = 10; do { trace ( "Løkke :" + counter ) counter + + ;} mens ( counter < 10),
p Hvis denne handling bruges et " mens " loop, ville indholdet aldrig udføre som den tilstand ville vende tilbage falsk , selv på den første iteration . Denne løkke vil køre én gang, så vil kun fortsætte, hvis testen returnerer sandt, hvilket det vil ikke i dette tilfælde.