Junior
Jaké typy cyklů for znáte v JavaScriptu?
sobes.tech AI
Odpověď od AI
V JavaScriptu existuje několik variant cyklu for:
-
for(klasický): Používá se k iteraci přes číselný rozsah nebo k provedení akce určitý početkrát.// Iterace přes číselný rozsah for (let i = 0; i < 5; i++) { console.log(i); // 0, 1, 2, 3, 4 } -
for...in: Prochází klíče (vlastnosti) enumerovatelných vlastností objektu (včetně vlastností prototypu). Nedoporučuje se pro iteraci přes pole kvůli možným problémům s pořadím a enumerací nečíselných vlastností.const obj = { a: 1, b: 2, c: 3 }; for (const key in obj) { console.log(`${key}: ${obj[key]}`); // a: 1 // b: 2 // c: 3 } const arr = ['jablko', 'banán', 'pomeranč']; for (const index in arr) { console.log(index); // 0, 1, 2 (klíče v tomto případě jsou indexy) } -
for...of: Prochází hodnoty iterovatelných objektů, jako jsou pole, řetězce, Map, Set, TypedArray a argumenty. Doporučuje se pro iteraci přes pole.const arr = ['jablko', 'banán', 'pomeranč']; for (const element of arr) { console.log(element); // jablko // banán // pomeranč } const str = "ahoj"; for (const char of str) { console.log(char); // a // h // o // j }
Porovnávací tabulka:
| Cyklus | Účel | Procházené prvky | Doporučeno pro |
|---|---|---|---|
for |
Iterace přes číselný rozsah, opakování | Určený počet krát | Obecné cykly |
for...in |
Procházení klíčů (vlastností) enumerovatelných objektů | Klíče (vlastnosti) | Objekty |
for...of |
Procházení hodnot iterovatelných objektů | Hodnoty | Pole, řetězce, Map, Set |