JavaScript, zatímco smyčka
Příklad
Opakujte blok kódu, pokud je ai menší než 5:
let text = "";
let i = 0;
while (i < 5) {
text += i + "<br>";
i++;
}
Opakujte (iterujte) pole pro sběr názvů aut:
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let text = "";
let i = 0;
while (i < cars.length) {
text += cars[i] + "<br>";
i++;
}
- Smyčka začíná v pozici 0 (
let i = 0
). - Smyčka se zvyšuje
i
pro každý běh (i++
). - Smyčka běží tak dlouho, dokud
i < cars.length
.
Další příklady níže.
Definice a použití
Příkaz while
vytvoří smyčku (a kolem bloku kódu), která se provede, když je podmínka
true
.
Cyklus běží, když je podmínka true
. Jinak to přestane.
Viz také:
Příkazy JavaScript Loop
Tvrzení | Popis | |
přestávka | Vytrhne se ze smyčky | |
pokračovat | Přeskočí hodnotu ve smyčce | |
zatímco | Opakuje blok kódu, když je podmínka pravdivá | |
dělat, zatímco | Zacyklí blok kódu jednou a poté, když je podmínka pravdivá | |
pro | Opakuje blok kódu, když je podmínka pravdivá | |
pro...z | Vytvoří smyčku hodnot všech iterovatelných | |
pro...v | Opakuje vlastnosti objektu |
Syntax
while (condition) {
code block to be executed
}
Parametry
Parameter | Description |
condition | Required. The condition for running the code block. If it returns true, the code clock will start over again, otherwise it ends. |
Poznámka
Pokud je podmínka vždy pravdivá, smyčka nikdy neskončí. To způsobí zhroucení vašeho prohlížeče.
Pokud v podmínce použijete proměnnou, musíte ji inicializovat před smyčkou a inkrementovat ji v rámci smyčky. Jinak smyčka nikdy neskončí. Tím se také zhroutí váš prohlížeč.
Další příklady
Smyčka přes pole v sestupném pořadí (záporný přírůstek):
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let text = "";
let len = cars.length;
while (len--) {
text += cars[len] + "<br>";
}
Použití break - Procházet blokem kódu, ale opustit smyčku, když i == 3:
let text = "";
let i = 0;
while (i < 5) {
text += i + "<br>";
i++;
if (i == 3) break;
}
Použití continue - Projděte blok kódu, ale přeskočte hodnotu 3:
let text = "";
let i = 0;
while (i < 5) {
i++;
if (i == 3) continue;
text += i + "<br>";
}
Podpora prohlížeče
while
je funkce ECMAScript1 (ES1).
ES1 (JavaScript 1997) je plně podporován ve všech prohlížečích:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |