Které hodnoty zobrazí cyklus „for“?
důležitost: 4
Pro oba cykly zapište hodnoty, které budou zobrazeny, a pak je porovnejte s řešením.
Vypíše alert v obou cyklech stejné hodnoty, nebo ne?
-
Postfixová notace:
for (let i = 0; i < 5; i++) alert( i ); -
Prefixová notace:
for (let i = 0; i < 5; ++i) alert( i );
Odpověď: od 0 do 4 v obou případech.
for (let i = 0; i < 5; ++i) alert( i );
for (let i = 0; i < 5; i++) alert( i );
Lze to snadno odvodit z algoritmu pro for:
- Nejdříve se jedenkrát vykoná
i = 0(začátek). - Ověří se podmínka
i < 5. - Je-li
true, vykoná se tělo cyklualert(i)a paki++.
Zvýšení i++ je odděleno od testu podmínky (2). Je to jen další příkaz.
Hodnota vrácená zvýšením se tady nepoužívá, takže mezi i++ a ++i není žádný rozdíl.