JavaScript pro Loop
Příklad
Opakujte (iterujte) blok kódu pětkrát:
for (let i = 0; i < 5; i++) {
text += i + "<br>";
}
Opakujte (iterujte) pole pro sběr názvů aut:
const cars = ["BMW", "Volvo", "Saab", "Ford"];
for (let i = 0; i < cars.length; i++) {
text += cars[i] + "<br>";
}
- Smyčka začíná v pozici 0 (
let i = 0
). - Smyčka se automaticky zvyšuje
i
pro každý běh. - Smyčka běží tak dlouho, dokud
i < cars.length
.
Další příklady níže.
Definice a použití
Příkaz for
definuje blok kódu, který se provádí, dokud je podmínka
true
.
Poznámka
Pokud vynecháte příkaz 2, musíte zadat přerušení uvnitř smyčky.
Jinak smyčka nikdy neskončí. To způsobí zhroucení vašeho prohlížeče.Viz také:
Syntax
for (statement 1; statement 2; statement 3) {
code block to be executed
}
Parametry
Parameter | Description |
statement 1 | Optional. Executed before the code block starts. Normally used to initialize a counter variable. To initiate multiple values, separate each value with a comma. This parameter can be omitted, but not the semicolon ";" |
statement 2 | Optional. The condition for running the code block. If it returns true the loop will start over again, otherwise the loop will end.This parameter can be omitted, but not the semicolon ";" |
statement 3 | Optional. Executed after the code block. Normally used to increment the counter variable. This parameter can be omitted (e.g. to increase/decrease values inside the loop) |
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 |
Další příklady
Iniciujte více hodnot v prvním parametru:
const cars = ["BMW", "Volvo", "Saab", "Ford"];
for (let i = 0, len = cars.length, text = ""; i < len; i++) {
text += cars[i] + "<br>";
}
Vynechejte první parametry (hodnoty nastavte před spuštěním smyčky):
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let i = 2;
let len = cars.length;
let text = "";
for (; i < len; i++) {
text += cars[i] + "<br>";
}
Použití continue
- Projděte blok kódu, ale přeskočte hodnotu 3:
let text = "";
for (let i = 0; i < 5; i++) {
if (i == 3) continue;
text += i + "<br>";
}
Použití break
- Smyčka bloku kódu, ale opuštění smyčky, když i == 3
:
let text = "";
for (let i = 0; i < 5; i++) {
if (i == 3) break;
text += i + "<br>";
}
Vynechejte druhý parametr.
Použijte break
pro ukončení smyčky, jinak smyčka nikdy neskončí a váš prohlížeč se zhroutí:
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let text = "";
for (let i = 0; ; i++) {
if (i == cars-length) break;
text += cars[i] + "<br>";
}
Smyčka přes pole v sestupném pořadí (záporný přírůstek):
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let text = "";
for (let i = cars.length - 1; i >= 0; i--) {
text += cars[i] + "<br>";
}
Vynechejte poslední parametr a zvyšte hodnoty uvnitř smyčky:
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let i = 0;
let len = cars.length;
for (; i < len;) {
text += cars[i] + "<br>";
i++;
}
Proveďte smyčku NodeList a změňte barvu všech p prvků v seznamu:
const myNodelist = document.getElementsByTagName("P");
for (let i = 0; i < myNodelist.length; i++) {
myNodelist[i].style.color = "blue";
}
Vnořená smyčka (smyčka uvnitř smyčky):
let text = "";
for (let = 0; i < 3; i++) {
text += i + "<br>";
for (let j = 10; j < 15; j++) {
text += j + "<br>";
}
}
Podpora prohlížeče
for
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 |