Stosowanie pętli jest jedną z podstawowych czynności podczas programowania w jakimkolwiek języku. Pozwalają one na wielokrotne powtarzanie pewnych, określonych instrukcji. Język ActionScript nie jest tu wyjątkiem.
Mamy w nim do dyspoozycji trzy rodzaje pętli: „while”, „for” oraz „for..in”.
Pętla while:
| zmienna = 0; while (zmienna < 10) { //instrukcje do wykonania trace(zmienna); zmienna++; } |
Tłumacząc powyższy kod można powiedzieć: wykonuj instrukcje, dopóki zmienna jest mniejsza od 10. Instrukcje zawarte pomiędzy {} zostaną wykonane 10 razy. Stanie się tak, ponieważ zmiennej na początku przypisujemy wartość 0. Następnie sprawdzamy, czy zmienna jest mniejsza od 10, wykonujemy instrukcje i zwiększamy wartość zmiennej o 1. Czyli w wyniku akcji trace() otrzymamy cyfry od 0 do 9.
Pętla for:
| for (zmienna=0; zmienna<10; zmienna++){ //instrukcje do wykonania trace(zmienna); } |
W pętli tej na początku inicjujemy wartość zmiennej (zmienna=0), następnie piszemy warunek, którego spełnienie zapewni nam zakończenie pętli, na końcu podajemy co ma się stać po wykonaniu każdego kroku (w tym przypadku zmienna jest zwiększana o 1). Wykonanie powyższej pętli da nam wynik identyczny jak w przypadku wykonania pętli while, czyli w oknie „output window” otrzymamy cyfry od 0 do 9.
Pętla for…in:
| komputer = new Object(); komputer.procesor = „AMD”; komputer.pamiec = „512MB” komputer.plyta_glowna = „Abit” for ( i in komputer) { trace (i + „: ” + komputer[i]); } |
Pętla ta wypisuje wszystkie właściwości utworzonego obiektu komputer (zaczynając od ostatniej). Funkcja trace() zwróci nam więc kolejno:
plyta_glowna: Abit
pamiec: 512MB
procesor: AMD
Widzimy więc, że zmienna „i” przechowuje nazwę właściwości danego obiektu natomiast komputer[i] stanowi referencję do wartości zmiennej.
Dodatkowo do dyspozycji mamy dwie akcje pozwalające nam wpływać na działanie pętli. Są to continue i break;
Continue:
| for (zmienna=0; zmienna<10; zmienna++){ if (zmienna == 5) { trace („ta wartość zostanie pominięta”); continue; } trace(zmienna); } |
Akcja continue powoduje przerwanie wykonywania pętli w danym miejscu i przejście do następnego kroku. W wyniku wykonania powyższego kodu otrzymamy:
0
1
2
3
4
ta wartość zostanie pominięta
6
7
8
9
Break:
| for (zmienna=0; zmienna<10; zmienna++){ if (zmienna == 5) { trace („tutaj pętla zostanie przerwana”); break; } trace(zmienna); } |
Akcja break powoduje natychmiastowe przerwanie i opuszczenie wykonywanej pętli. W powyższym przypadku stanie się to jeśli zmienna osiągnie wartość 5. Po wykonaniu powyższej pętli otrzymamy więc:
0
1
2
3
4
tutaj pętla zostanie przerwana
Tak oto poznaliśmy podstawy stosowania pętli we Flashu. W razie pytań lub wątpliwości zapraszam na
