⊗jsPmLpCn 157 of 505 menu

Příkaz continue v JavaScriptu

Existuje také příkaz continue, který spustí novou iteraci cyklu. Tento příkaz může být někdy užitečný pro zjednodušení kódu, i když úkol je téměř vždy možné vyřešit i bez něj. Podívejme se na praktický příklad.

Mějme pole s čísly. Projděme jej cyklem a čísla, která jsou dělitelná 2, umocněme na druhou a vypišme do konzole, a čísla, která jsou dělitelná 3, umocněme na třetí a vypišme do konzole. Zde je řešení popsaného úkolu:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 === 0) { result = elem * elem; console.log(result); } else if (elem % 3 === 0) { result = elem * elem * elem; console.log(result); } }

Jak vidíte, řádek console.log(result) se opakuje dvakrát. Vynesme jej za if, takto:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 === 0) { result = elem * elem; } else if (elem % 3 === 0) { result = elem * elem * elem; } console.log(result); // přesunuli výpis za podmínku }

Nyní však náš skript funguje trochu jinak: vyjde najevo, že i pro běžné prvky, nezpracované přes náš if, bude proveden výpis proměnné result do konzole, což podle podmínek našeho úkolu nechceme.

Opravme problém přidáním k našemu if ještě podmínky else, která se bude spouštět pro prvky nedělitelné 2 a 3, a zavolejme tam příkaz continue, který nás okamžitě přenese na novou iteraci cyklu:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 == 0) { result = elem * elem; } else if (elem % 3 == 0) { result = elem * elem * elem; } else { continue; // přejdeme na novou iteraci cyklu } console.log(result); // provedeno, pokud je dělitelné 2 nebo 3 }

Napište cyklus, který vypíše pouze sudá čísla od 1 do 100, a přeskočí lichá pomocí continue.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout