Š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 while
ir do… while
kilpas.
„JavaScript“, o ciklas
Kilpos sintaksė while
yra:
while (condition) ( // body of loop )
Čia
while
Kilpa įvertina būklę viduje skliausteliuose()
.- Jei sąlyga įvertinama
true
,while
vykdomas 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
![](https://cdn.wiki-base.com/5344557/javascript_while_and_dowhile_loop_with_examples.png.webp)
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 = 1 n = 5 | true | 1 atspausdinta. i padidėja iki 2 . |
2-oji | i = 2 n = 5 | true | 2 atspausdinta. i padidinamas iki 3 . |
3 d | i = 3 n = 5 | true | 3 atspausdinta. i padidėja iki 4 . |
4-oji | i = 4 n = 5 | true | 4 atspausdinta. i padidėja iki 5 . |
5 d | i = 5 n = 5 | true | 5 atspausdintas. i padidėja iki 6 . |
6-oji | i = 6 n = 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ų.
while
Kilpa tęsiasi tol, kol vartotojas įveda neigiamas skaičius. Kiekvienos kartojimo metu vartotojo įvestas skaičius pridedamas prie sum
kintamojo.
Vartotojui įvedus neigiamą skaičių, kilpa nutrūksta. Galiausiai rodoma visa suma.
„JavaScript“ daro … o ciklas
Kilpos sintaksė do… while
yra:
do ( // body of loop ) while(condition)
Čia
- Iš pradžių atliekamas kilpos kūnas. Tada būklė įvertinama.
- Jei būklė vertinama į
true
,do
sakinio viduje esančios kilpos kūnas vėl vykdomas. - Būklė vėl vertinamas.
- Jei būklė vertinama į
true
,do
sakinio viduje esančios kilpos kūnas vėl vykdomas. - Šis procesas tęsiasi tol, kol būklė įvertins
false
. Tada kilpa sustoja.
Pastaba : do… while
kilpa yra panaši į while
kilpą. Vienintelis skirtumas yra tas, kad do… while
cikle ciklo kūnas yra vykdomas bent kartą.
„Do“, o ciklo, schema
![](https://cdn.wiki-base.com/5344557/javascript_while_and_dowhile_loop_with_examples_2.png.webp)
Pažiūrėkime, kaip veikia do… while
kilpa.
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 = 1 n = 5 | nepatikrinta | 1 atspausdinta. i padidėja iki 2 . | |
1-oji | i = 2 n = 5 | true | 2 atspausdinta. i padidinamas iki 3 . |
2-oji | i = 3 n = 5 | true | 3 atspausdinta. i padidėja iki 4 . |
3 d | i = 4 n = 5 | true | 4 atspausdinta. i padidėja iki 5 . |
4-oji | i = 5 n = 5 | true | 6 atspausdintas. i padidėja iki 6 . |
5 d | i = 6 n = 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 while
ir do… while
kilpos dažniausiai naudojamos, kai nežinomas pakartojimų skaičius. Pavyzdžiui,
while (condition) ( // body of loop )