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ť whilea robiť do… whilecykly.
JavaScript počas cyklu
Syntax whileslučky je:
while (condition) ( // body of loop )
Tu,
whileSlučka vyhodnotí stav vnútri zátvoriek().- Ak je podmienka vyhodnotená na
true,whilevykoná 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
Vývojový diagram kódu JavaScript while
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 = 1n = 5 | true | 1 je vytlačený. i sa zvyšuje na 2 . |
| 2 | i = 2n = 5 | true | 2 je vytlačený. i sa zvyšuje na 3 . |
| 3 | i = 3n = 5 | true | 3 je vytlačený. i je zvýšené na 4 . |
| 4 | i = 4n = 5 | true | 4 je vytlačený. i je zvýšené na 5 . |
| 5 | i = 5n = 5 | true | 5 je vytlačený. i je zvýšené na 6 . |
| 6. | i = 6n = 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.
whileSlučka pokračuje, kým používateľ zadá číslo negatívny. Počas každej iterácie sa do sumpremennej 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… whilesluč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útridopríkazu sa vykoná znova. - Podmienka je vyhodnotená znova.
- Ak podmienka vyhodnotí ako
true, telo slučky vo vnútridopríkazu sa vykoná znova. - Tento proces pokračuje, kým sa stav nevyhodnotí ako
false. Potom sa slučka zastaví.
Poznámka : do… whileslučka je podobná whileslučke. Jediný rozdiel je v tom, že v do… whileslučke sa telo slučky vykoná aspoň raz.
Vývojový diagram úloh … zatiaľ čo slučka
Vývojový diagram JavaScriptu robí … zatiaľ čo slučka
Pozrime sa na fungovanie do… whilesluč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 = 1n = 5 | nekontrolované | 1 je vytlačený. i sa zvyšuje na 2 . | |
| 1 | i = 2n = 5 | true | 2 je vytlačený. i sa zvyšuje na 3 . |
| 2 | i = 3n = 5 | true | 3 je vytlačený. i je zvýšené na 4 . |
| 3 | i = 4n = 5 | true | 4 je vytlačený. i je zvýšené na 5 . |
| 4 | i = 5n = 5 | true | 6 je vytlačený. i je zvýšené na 6 . |
| 5 | i = 6n = 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 whilea do… whileslučky sa zvyčajne používajú, keď nie je známy počet iterácií. Napríklad,
while (condition) ( // body of loop )








