13 Cykly
Cyklem označujeme část kódu, který se opakuje. Chceme-li něco udělat třeba tisíckát, můžeme tisíckrát zkopírovat příkaz a nebo to udělat v cyklu.
Nedávno jsem si dělala tuto pomůcku pro kreslení a potřebovala jsem vygenerovat síť tlačítek, které mi zakryjí obrázek. Cykly potřebujeme znát když pracujeme s poli (složitější proměnná o které si povíme více příště).
POZOR! Hrajeme-li si s cykly, velmi snadno se nám stane, že se zacyklíme. Spustíme-li nekonečný cyklus většinou nám zatuhne prohlížeč, v horším případě budeme muset restartovat celý počítač.
Existují tři základní typy cyklů:
- while (podmínka) { tělo cyklu }
- do { tělo cyklu } while (podmínka)
- for ( počáteční hodnota ; podmínka ; krok ) { tělo cyklu }
While je cyklus s podmínkou na začátku. Do-while je cyklus s podmínkou na konci. To je jediný rozdíl. U těchto dvou cyklů si však člověk musí dávat pořádně pozor, aby se nezacyklil. Všchny cykly běží tak dlouho, dokud je podmínka pravdivá. Zapomeneme-li teda uvnitř cyklu, měnit hodnotu proměnné v podmínce, jsme zacyklení.
Př.1: cykly.html
var juchu = 1; while ( juchu < 11 ) { document.write("juchu je "); document.write(juchu); document.write("<br>"); juchu = juchu + 1; }
Kdybych zapoměla na poslední zvýrazněný příkaz cyklu (jako že jsem zapoměla :)), došlo by k zacyklení. Neboť proměnná juchu by se neměnila, zůstavala by stále rovna jedné, a podmínka juchu < 11 by byla stále pravdivá 1<11.
No a protože se na tu kontrolní proměnnou často zapomíná a takové zapomnění, může udělat pěknou paseku, je tu cyklus for. V cyklu for, musíme ošetřit hned na začátku všechno. Kromě samotné podmínky obsahuje hlavička forka počáteční hodnotu a krok (přičtení s každým cyklem), vše odděleno středníkem.
Př.2: cykly-for.html
for (var juchu=1; juchu < 11 ; juchu = juchu+1) {
document.write("juchu je ");
document.write(juchu);
document.write("<br>");
}
V tomto příkladu jste viděli přepsaný př.1 do forka. Všiměte si že dva řádky z př.1 se nyní ocitly v závorce spolu s podmínkou.