ActionScript 3.0 consente agli sviluppatori di implementare flussi complessi di animazione nelle applicazioni Flash e filmati . I loop sono tra le strutture più utili e comuni in script AS3 . Funzioni loop consentono di scorrere le strutture di dati e di effettuare il trattamento ripetitivo senza dover ripetere righe di codice . AS3 fornisce una gamma di loop, ognuna delle quali è adatta ad un diverso tipo di attività. Per Loop
Il ciclo "for " esegue l'elaborazione ripetitiva utilizzando una variabile contatore e un test condizionale . Il seguente codice di esempio illustra un semplice ciclo "for" : var contatore : int ; for ( contatore = 0; contatore < 10; contatore + + ) {trace ( " loop: " + contatore );}
questo ciclo emette valori numerici da zero a nove . Quando il codice entra nel ciclo , la variabile contatore è impostato a zero . Ogni passaggio del loop , il programma verifica la variabile contatore. Se la variabile è ancora inferiore a dieci, il contenuto del ciclo viene eseguito , la variabile contatore viene incrementato , aggiungendo un valore di uno per esso . Il test condizionale viene poi effettuata per controllare il valore del contatore . Quando il valore raggiunge il 10 , si muove passato il ciclo di elaborazione .
Per In Loop
" per in " loop permette ai programmi per scorrere strutture dati come array . Il codice seguente illustra : fruitCollection var : Array = ["alimento " , "banane " , " arancia " , " melone "] ; for (var frutta : String in fruitCollection ) {trace ( " Fruit : " + frutta + " =" + fruitCollection [ frutta ] );}
Questo codice produrrà ogni elemento della matrice a sua volta . Non vi è alcuna necessità di istituire un test condizionale verifica della lunghezza della matrice e il valore del contatore , come AS3 si arresta automaticamente quando la struttura a matrice è esaurito .
For Each In Loop
"per ogni a " ciclo scorre anche attraverso le collezioni , ma invece di usare valori di indice come riferimenti posizioni all'interno di strutture di dati come array , recupera l'elemento stessi valori . Il seguente codice di esempio illustra : fruitCollection var : Array = ["alimento " , "banane " , " arancia " , " melone "] , per ogni ( fruitString var in fruitCollection ) {trace ( " Fruit : " + fruitString ) . }
p c'è alcuna necessità di utilizzare il valore dell'indice all'interno di questo ciclo , come la "per ogni " loop accede automaticamente l'elemento in ciascuna posizione nella struttura
mentre loop
Il ciclo "while " permette di effettuare il trattamento , mentre una certa condizione rimane vera . Come il ciclo "for " , il ciclo "while" utilizza un test condizionale , come segue : var contatore : int = 0; while ( contatore < 10) {trace ( " loop: " + contatore ) ; contatore + + ; }
Questo ciclo ha lo stesso effetto come l'esempio "per" loop, ma una diversa implementazione . Il contatore viene inizializzato a zero prima dell'inizio del ciclo , allora il test condizionale determina se il contenuto di un ciclo viene eseguito ogni volta. Il codice all'interno del ciclo incrementa il contatore come l'ultima linea di lavorazione .
Do While Loop
Il "do while" è simile al " mentre" , loop, ma consente ai programmatori di garantire il tenore di ciclo viene eseguito almeno una volta . Il seguente codice di esempio illustra : contatore var : int = 10; do { trace ( " loop: " + contatore ) ; contatore + + ; } while ( contatore < 10) ;
Se questa azione ha utilizzato un " mentre " loop, il contenuto sarebbe mai eseguire come condizione sarebbe restituire false anche alla prima iterazione . Questo loop verrà eseguito una volta , quindi solo continuerà se il test restituisce true , il che lo farà non in questo caso .