Větvení

Základní způsoby větvení a cyklů v JavaScriptu jsou příkazy if, while a for.

if

if(podmínka) {
příkazy prováděné při splnění podmínky;
}
else {
příkazy prováděné při nesplnění podmínky;
}

Jako podmínka se musí uvést výraz, jehož logická hodnota je true nebo false (pravda nebo nepravda).

Např.:

if (volby == "svobodne"){
document.write("Možná máme demokracii");
pokracovat = true;}
else {
document.write("Máme diktaturu"); pokracovat = false;}

Zápis je ve většině případů jednodušší. Např.:

if (puntiku != 12)
document.write("Nemáme celý ciferník!");

Jak je vidět, pokud je příkaz jenom jeden, nemusí se uzavírat do složených závorek. Také lze vynechat else, není-li potřeba.

Časté chyby u if:

rozhodovací operátor ? :

Ternální operátor umožňuje rychlejší zápis rozhodování, pokud chci pouze přiřadit hodnotu proměnné. Syntaxe: 

proměnná = podmínka ? hodnota1 : hodnota2;

Pokud je podmínka pravdivá, má proměnná hodnotu hodnota1, pokud je podmínka nepravdivá, má proměnná hodnotu hodnota2.

switch case

Pro větvení do více alternativ existuje příkaz switch, který ale nefunguje v trojkových verzích prohlížečů, proto je lepší jej nepoužívat. Sytaxe je:

switch(proměnná) {
case hodnota : příkaz;
case hodnota2 : příkaz2;
...
default : příkazx}

while

Cyklus s podmínkou na začátku. Sekvence vnitřních příkazů se provádí dokola, dokud platí podmínka. Jakmile podmínka neplatí, pokračuje program dál.

while (podmínka) {
sekvence příkazů
}

Následující příklad zvyšuje proměnnou o pět jednotek, dokud nebude větší nebo rovna třiceti:

while(promenna < 30) {
promenna += 5;
}

Časté chyby u while:

do while

Cyklus s podmínkou na konci nefunguje v trojkových verzích prohlížečů. Syntaxe: 

do 
{sekvence příkazů}
while (podmínka)

Je-li podmínka pravdivá, cyklus se ukončí a program jde dál.

for

Cyklus obvykle určený pro daný počet opakování (třebaže to může být jinak). Syntaxe:

for (počáteční hodnota; podmínka; navýšení) { příkazy; }

Např. tento program vypíše všechny HTML velikosti písma:

for (i=1; i <= 7; i++) {
document.write("<font size=\"" + i + "\">Vzorek písma</font>");
document.write("<br>");
 }

Zobrazte si příklad. Drobný komentář: používám proměnnou i, která má na počátku hodnotu 1. Navýšení i++ znamená, že při každém dalším průchodu cyklem se i zvýší o 1 (++ je navýšení o jedna). Trochu komplikovanější věcí je použití sekvence \" , což je způsob, jak do výstupu vložit uvozovky.

for in

Cyklus přiřazuje proměnné postupně všechny vlastnosti objektu. Nefunguje v IE 3. Syntaxe:

for (proměnná in objekt)
{příkazy}

break

Příkaz break předčasně ukončí cyklus while nebo for.