zpět k lekci

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?

  1. Postfixová notace:

    for (let i = 0; i < 5; i++) alert( i );
  2. 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:

  1. Nejdříve se jedenkrát vykoná i = 0 (začátek).
  2. Ověří se podmínka i < 5.
  3. Je-li true, vykoná se tělo cyklu alert(i) a pak i++.

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.