V tomto tutoriáli sa pomocou príkladov dozviete o cykle while a cykle … while.
Pri programovaní sa slučky používajú na opakovanie bloku kódu. Napríklad, ak chcete správu zobraziť stokrát, môžete použiť slučku. Je to len jednoduchý príklad; pomocou slučiek môžete dosiahnuť oveľa viac.
V predchádzajúcom tutoriáli ste sa dozvedeli o cykle JavaScript for. Tu sa budete učiť while
a robiť do… while
cykly.
JavaScript počas cyklu
Syntax while
slučky je:
while (condition) ( // body of loop )
Tu,
while
Slučka vyhodnotí stav vnútri zátvoriek()
.- Ak je podmienka vyhodnotená na
true
,while
vykoná sa kód vo vnútri slučky. - Stav je opäť vyhodnotený.
- Tento proces pokračuje, kým podmienka je
false
. - Keď sa stav vyhodnotí ako
false
, slučka sa zastaví.
Ak sa chcete dozvedieť viac informácií o podmienkach , navštívte stránku Porovnanie JavaScriptu a Logické operátory.
Vývojový diagram while Loop

Príklad 1: Zobrazenie čísel od 1 do 5
// program to display numbers from 1 to 5 // initialize the variable let i = 1, n = 5; // while loop from i = 1 to 5 while (i <= n) ( console.log(i); i += 1; )
Výkon
1 2 3 4 5
Takto funguje tento program.
Iterácia | Variabilné | Podmienka: i <= n | Akcia |
---|---|---|---|
1 | i = 1 n = 5 | true | 1 je vytlačený. i sa zvyšuje na 2 . |
2 | i = 2 n = 5 | true | 2 je vytlačený. i sa zvyšuje na 3 . |
3 | i = 3 n = 5 | true | 3 je vytlačený. i je zvýšené na 4 . |
4 | i = 4 n = 5 | true | 4 je vytlačený. i je zvýšené na 5 . |
5 | i = 5 n = 5 | true | 5 je vytlačený. i je zvýšené na 6 . |
6. | i = 6 n = 5 | false | Slučka je ukončená |
Príklad 2: Súčet iba kladných čísel
// program to find the sum of positive numbers // if the user enters a negative numbers, the loop ends // the negative number entered is not added to sum let sum = 0; // take input from the user let number = parseInt(prompt('Enter a number: ')); while(number>= 0) ( // add all positive numbers sum += number; // take input again if the number is positive number = parseInt(prompt('Enter a number: ')); ) // display the sum console.log(`The sum is $(sum).`);
Výkon
Zadajte číslo: 2 Zadajte číslo: 5 Zadajte číslo: 7 Zadajte číslo: 0 Zadajte číslo: -3 Súčet je 14.
Vo vyššie uvedenom programe je používateľ vyzvaný na zadanie čísla.
Tu parseInt()
sa používa, pretože prompt()
berie vstup od používateľa ako reťazec. A keď sa pridajú číselné reťazce, správa sa ako reťazec. Napríklad '2' + '3' = '23'
. Takže parseInt()
prevedie číselný reťazec na číslo.
while
Slučka pokračuje, kým používateľ zadá číslo negatívny. Počas každej iterácie sa do sum
premennej pridá číslo zadané používateľom .
Keď užívateľ zadá záporné číslo, slučka sa ukončí. Nakoniec sa zobrazí celková suma.
JavaScript robí … zatiaľ čo Loop
Syntax do… while
slučky je:
do ( // body of loop ) while(condition)
Tu,
- Najskôr sa vykoná telo slučky. Potom sa stav vyhodnotí.
- Ak podmienka vyhodnotí ako
true
, telo slučky vo vnútrido
príkazu sa vykoná znova. - Podmienka je vyhodnotená znova.
- Ak podmienka vyhodnotí ako
true
, telo slučky vo vnútrido
príkazu sa vykoná znova. - Tento proces pokračuje, kým sa stav nevyhodnotí ako
false
. Potom sa slučka zastaví.
Poznámka : do… while
slučka je podobná while
slučke. Jediný rozdiel je v tom, že v do… while
slučke sa telo slučky vykoná aspoň raz.
Vývojový diagram úloh … zatiaľ čo slučka

Pozrime sa na fungovanie do… while
slučky.
Príklad 3: Zobrazenie čísel od 1 do 5
// program to display numbers let i = 1; const n = 5; // do… while loop from 1 to 5 do ( console.log(i); i++; ) while(i <= n);
Výkon
1 2 3 4 5
Takto funguje tento program.
Iterácia | Variabilné | Podmienka: i <= n | Akcia |
---|---|---|---|
i = 1 n = 5 | nekontrolované | 1 je vytlačený. i sa zvyšuje na 2 . | |
1 | i = 2 n = 5 | true | 2 je vytlačený. i sa zvyšuje na 3 . |
2 | i = 3 n = 5 | true | 3 je vytlačený. i je zvýšené na 4 . |
3 | i = 4 n = 5 | true | 4 je vytlačený. i je zvýšené na 5 . |
4 | i = 5 n = 5 | true | 6 je vytlačený. i je zvýšené na 6 . |
5 | i = 6 n = 5 | false | Slučka je ukončená |
Príklad 4: Súčet kladných čísel
// to find the sum of positive numbers // if the user enters negative number, the loop terminates // negative number is not added to sum let sum = 0; let number = 0; do ( sum += number; number = parseInt(prompt('Enter a number: ')); ) while(number>= 0) console.log(`The sum is $(sum).`);
Výstup 1
Zadajte číslo: 2 Zadajte číslo: 4 Zadajte číslo: -500 Súčet je 6.
Here, the do… while
loop continues until the user enters a negative number. When the number is negative, the loop terminates; the negative number is not added to the sum variable.
Output 2
Enter a number: -80 The sum is 0.
The body of the do… while
loop runs only once if the user enters a negative number.
Infinite while Loop
If the condition of a loop is always true
, the loop runs for infinite times (until the memory is full). For example,
// infinite while loop while(true)( // body of loop )
Here is an example of an infinite do… while
loop.
// infinite do… while loop const count = 1; do ( // body of loop ) while(count == 1)
In the above programs, the condition is always true
. Hence, the loop body will run for infinite times.
for Vs while Loop
A for
loop is usually used when the number of iterations is known. For example,
// this loop is iterated 5 times for (let i = 1; i <=5; ++i) ( // body of loop )
A while
a do… while
slučky sa zvyčajne používajú, keď nie je známy počet iterácií. Napríklad,
while (condition) ( // body of loop )