Procházení pole

Cykly a pole patří k sobě. Cyklem for můžete projít indexy pole od 0 až po poslední a přečíst každý prvek:

const hry = ["Fotbal", "Tenis", "Golf"];
for (let i = 0; i < hry.length; i++) {
    console.log(hry[i]);
}

Vypíše:

Fotbal
Tenis
Golf

Počítadlo i začíná na 0, tedy na prvním indexu. Podmínka i < hry.length cyklus ukončí po posledním indexu, kterým je hry.length - 1. Častou chybou je i <= hry.length: cyklus pak proběhne ještě jednou, přečte hry[3], který neexistuje, a vypíše undefined. Díky .length cyklus funguje pro pole jakékoli délky, i když do něj pomocí .push() přidáte další prvky.

Procházení všech prvků je tak časté, že na ně má JavaScript jednodušší cyklus, for...of:

const hry = ["Fotbal", "Tenis", "Golf"];
for (const hra of hry) {
    console.log(hra);
}
Fotbal
Tenis
Golf

Zápis for (const hra of hry) čtěte jako „pro každou hru z pole hry“; anglické of tu znamená „z“. V každém průchodu je v proměnné hra další prvek: nejdřív "Fotbal", pak "Tenis" a nakonec "Golf". Index ani .length vůbec nepotřebujete. Proměnnou pojmenujte podle jednoho prvku pole: hra z pole hry, jmeno z pole jmena.

Proč může být hra vytvořená pomocí const, když počítadlo klasického for musí být let? Protože for...of pro každý průchod vytvoří novou proměnnou hra a během průchodu ji nic nemění. Počítadlo i je jedna proměnná, kterou i++ stále mění.

Který cyklus tedy použít? for...of, když chcete projít prvky jeden po druhém. Je kratší a v indexech se nespletete. Klasický for, když potřebujete i index, třeba abyste prvky očíslovali, nebo když chcete procházet pozpátku či některé prvky přeskočit.

Pokyny

Napište cyklus for...of, který vypíše každý prvek pole spoluhraci na samostatný řádek.

Pod něj napište klasický cyklus for s indexem, který vypíše spoluhráče i s pořadovým číslem: 1. Ondřej, 2. Tomáš, 3. Honza a 4. Pavel. Číslo je index plus jedna.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

Zpět

4/12

Další