Šioje pamokoje su pavyzdžiais sužinosite apie „loop“ ir „… loop“.
Programuojant ciklo blokui pakartoti naudojamos kilpos. Pavyzdžiui, jei norite parodyti pranešimą 100 kartų, galite naudoti kilpą. Tai tik paprastas pavyzdys; kilpomis galite pasiekti daug daugiau.
Ankstesnėje pamokoje sužinojote apie „JavaScript for loop“. Čia jūs ketinate sužinoti apie whileir do… whilekilpas.
„JavaScript“, o ciklas
Kilpos sintaksė whileyra:
while (condition) ( // body of loop )
Čia
whileKilpa įvertina būklę viduje skliausteliuose().- Jei sąlyga įvertinama
true,whilevykdomas ciklo viduje esantis kodas . - Būklė vertinama dar kartą.
- Šis procesas tęsiasi tol, kol sąlyga yra
false. - Kai būklė įvertinama iki
false, kilpa sustoja.
Norėdami sužinoti daugiau apie sąlygas , apsilankykite „JavaScript“ palyginimo ir loginių operatorių puslapyje.
„Loop“ schema
„JavaScript while“ ciklo schema
1 pavyzdys: rodyti skaičius nuo 1 iki 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; )
Rezultatas
1 2 3 4 5
Štai kaip ši programa veikia.
| Kartojimas | Kintamas | Būklė: i <= n | Veiksmas |
|---|---|---|---|
| 1-oji | i = 1n = 5 | true | 1 atspausdinta. i padidėja iki 2 . |
| 2-oji | i = 2n = 5 | true | 2 atspausdinta. i padidinamas iki 3 . |
| 3 d | i = 3n = 5 | true | 3 atspausdinta. i padidėja iki 4 . |
| 4-oji | i = 4n = 5 | true | 4 atspausdinta. i padidėja iki 5 . |
| 5 d | i = 5n = 5 | true | 5 atspausdintas. i padidėja iki 6 . |
| 6-oji | i = 6n = 5 | false | Kilpa nutraukiama |
2 pavyzdys: tik teigiamų skaičių suma
// 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).`);
Rezultatas
Įveskite skaičių: 2 Įveskite skaičių: 5 Įveskite numerį: 7 Įveskite skaičių: 0 Įveskite skaičių: -3 Suma yra 14.
Pirmiau minėtoje programoje vartotojas raginamas įvesti numerį.
Čia parseInt()naudojamas, nes prompt()vartotojo įvestis yra eilutė. Kai pridedamos skaitinės eilutės, ji elgiasi kaip eilutė. Pavyzdžiui '2' + '3' = '23',. Taigi parseInt()konvertuoja skaitinę eilutę į skaičių.
whileKilpa tęsiasi tol, kol vartotojas įveda neigiamas skaičius. Kiekvienos kartojimo metu vartotojo įvestas skaičius pridedamas prie sumkintamojo.
Vartotojui įvedus neigiamą skaičių, kilpa nutrūksta. Galiausiai rodoma visa suma.
„JavaScript“ daro … o ciklas
Kilpos sintaksė do… whileyra:
do ( // body of loop ) while(condition)
Čia
- Iš pradžių atliekamas kilpos kūnas. Tada būklė įvertinama.
- Jei būklė vertinama į
true,dosakinio viduje esančios kilpos kūnas vėl vykdomas. - Būklė vėl vertinamas.
- Jei būklė vertinama į
true,dosakinio viduje esančios kilpos kūnas vėl vykdomas. - Šis procesas tęsiasi tol, kol būklė įvertins
false. Tada kilpa sustoja.
Pastaba : do… whilekilpa yra panaši į whilekilpą. Vienintelis skirtumas yra tas, kad do… whilecikle ciklo kūnas yra vykdomas bent kartą.
„Do“, o ciklo, schema
„JavaScript“ schema daro … o ciklo metu
Pažiūrėkime, kaip veikia do… whilekilpa.
3 pavyzdys: rodyti skaičius nuo 1 iki 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);
Rezultatas
1 2 3 4 5
Štai kaip ši programa veikia.
| Kartojimas | Kintamas | Būklė: i <= n | Veiksmas |
|---|---|---|---|
i = 1n = 5 | nepatikrinta | 1 atspausdinta. i padidėja iki 2 . | |
| 1-oji | i = 2n = 5 | true | 2 atspausdinta. i padidinamas iki 3 . |
| 2-oji | i = 3n = 5 | true | 3 atspausdinta. i padidėja iki 4 . |
| 3 d | i = 4n = 5 | true | 4 atspausdinta. i padidėja iki 5 . |
| 4-oji | i = 5n = 5 | true | 6 atspausdintas. i padidėja iki 6 . |
| 5 d | i = 6n = 5 | false | Kilpa nutraukiama |
4 pavyzdys: Teigiamų skaičių suma
// 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).`);
1 rezultatas
Įveskite skaičių: 2 Įveskite skaičių: 4 Įveskite skaičių: -500 Suma yra 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 )
Ir whileir do… whilekilpos dažniausiai naudojamos, kai nežinomas pakartojimų skaičius. Pavyzdžiui,
while (condition) ( // body of loop )








