Instrukcje
- Blok - pozwala wstawić kilka instrukcji w miejscu, gdzie wymagana jest jedna
- Zmienna - deklaruje zmienną. Jeżeli instrukcja występuje wewnątrz ciała funkcji, deklarowana jest zmienna lokalna (blok nie definiuje nowego zakresu wykonywania programu!).
var Identyfikator
var Identyfikator = Wartosc
var Identyfikator0, Identyfikator1, Identyfikator2
- Instrukcja pusta -
; (służy jako separator kolejnych następujących po sobie instrukcji)
- Warunek
if
if (Warunek) Instrukcja
if (Warunek) Instrukcja else Instrukcja
- Iteracje (pętle)
do Instrukcja while (Warunek) - pętla ze sprawdzaniem warunku na końcu przebiegu (wykonywana przynajmniej raz)
continue - skok do następnego przebiegu
break - przerwanie wykonywania pętli
while (Warunek) Instrukcja - pętla ze sprawdzaniem warunku na początku przebiegu (może nie być wykonana ani razu)
continue - skok do następnego przebiegu
break - przerwanie wykonywania pętli
for (WyrazenieWejsciowe; Warunek; WyrazeniePoPrzebiegu) Instrukcja
Wszystkie składniki w nawiasie są opcjonalne. Można zapisać np.:
for ( ; ; ) Instrukcja
Algorytm działania:
- Jeżeli
Warunek nie występuje, skocz do punktu 3
- Wykonaj
WyrazenieWejsciowe
- Jeżeli
Warunek nie występuje, skocz do punktu 5
- Jeżeli
Warunek==false zakończ działanie
- Wykonaj
Instrukcje
- Jeżeli w
Instrukcji nastąpi break, zakończ działanie
- Jeżeli w
Instrukcji nastapi continue, skocz do następnego punktu
- Jeżeli
WyrazeniePoPrzebiegu nie występuje, skocz do punktu 3
- Wykonaj
WyrazeniePoPrzebiegu
- Skocz do punktu 3
for (LeftHandSideExpression in Obiekt) Instrukcja
Algorytm działania:
- Pobierz kolejną nazwę własności
Obiektu, która nie posiada atrybutu dontEnum, a jeżeli nie ma więcej własności, zakończ działanie
- Przypisz pobraną nazwę (nie wartość!) do
LeftHandSideExpression
- Wykonaj
Instrukcje
- Jeżeli w
Instrukcji nastąpi break, zakończ działanie
- Jeżeli w
Instrukcji nastąpi continue, skocz do następnego punktu
- Skocz do początku
- Kontynuuj
continue - skocz do następnego przebiegu aktualnej pętli
continue Identyfikator - skocz do następnego przebiegu pętli poprzedzonej etykietą Identyfikator
- Przerwij
break - zakończ działanie aktualnej pętli
break Identyfikator - zakończ działanie pętli poprzedzonej etykietą Identyfikator
- Zwróć
return - wychodzi z funkcji
return Wyrazenie - wychodzi z funkcji zwracając Wyrazenie
with (Obiekt) Instrukcja - w Instrukcji można się odwoływać wprost do własności i metod Obiektu bez operatora dostępu (.).
- "Przełącznik"
switch (Wyrazenie) { BlokCase }
BlokCase składa się z następujących po sobie klauzul:
case Wartosc: Instrukcja; lub case Wartosc:
Występować może również klauzula
default: Instrukcja; albo default:
Algorytm działania:
- Obliczane jest
Wyrazenie
- W klauzulach
BlockCase szukana jest obliczona Wartosc Wyrazenia na zasadzie operatora identyczności (===)
- Jeżeli nie znaleziono odpowiadającej
Wartosci, następuje skok do klauzuli default:, a jeśli jej nie ma, następuje wyjście z instrukcji
- W przeciwnym razie następuje skok do odpowiadającej klauzuli
case Wartosc: i wykonanie wszystkich (!) dalszych Instrukcji aż do napotkania break
- Jeśli napotkano
break, następuje wyjście z instrukcji
Identyfikator: Instrukcja - oznacza Instrukcje etykietą o nazwie Identyfikator, która jest wykorzystywana wspólnie z instrukcjami continue i break (instrukcja goto nie występuje w ECMAScript!)
throw Wyrazenie - rzuca wyjątek o wartości Wyrazenia
- Obsługa wyjątków
try Instrukcja catch (Identyfikator) InstrukcjaCatch
try Instrukcja finally InstrukcjaFinally
try Instrukcja catch (Identyfikator) InstrukcjaCatch finally InstrukcjaFinally
Algorytm działania:
- Wykonywana jest
Instrukcja
- Jeżeli wystąpi wyjątek i występuje blok
catch (Identyfikator) InstrukcjaCatch, wykonywanie kodu jest przekazywane do tego bloku, a Identyfikatorowi przypisywana jest wartość wyjątku
- Jeżeli występuje blok
finally InstrukcjaFinally, wykonywanie kodu jest przekazywane do tego bloku (bez względu czy wystąpił wyjątek!)