Šajā apmācībā jūs uzzināsit par while loop un do… while loop ar piemēru palīdzību.
Programmēšanā cilpas tiek izmantotas, lai atkārtotu koda bloku. Piemēram, ja vēlaties 100 reizes parādīt ziņojumu, varat izmantot cilpu. Tas ir tikai vienkāršs piemērs; jūs varat sasniegt daudz vairāk ar cilpām.
Iepriekšējā apmācībā jūs uzzinājāt par JavaScript for loop. Šeit jūs uzzināsiet par while
un do… while
cilpām.
JavaScript, kamēr cilpa
while
Cilpas sintakse ir šāda:
while (condition) ( // body of loop )
Šeit,
while
Cilpa novērtē stāvokli iekšpusē iekavās()
.- Ja nosacījums tiek novērtēts līdz
true
,while
tiek izpildīts kods cilpas iekšpusē . - Stāvoklis tiek vērtēts vēlreiz.
- Šis process turpinās, līdz stāvoklis ir
false
. - Kad stāvoklis tiek novērtēts līdz
false
, cilpa apstājas.
Lai uzzinātu vairāk par nosacījumiem , apmeklējiet JavaScript salīdzināšanas un loģisko operatoru vietni.
Bloka diagramma, kamēr cilpa

1. piemērs: attēlot skaitļus no 1 līdz 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; )
Rezultāts
1 2 3 4 5
Šī programma darbojas šādi.
Atkārtojums | Mainīgs | Nosacījums: i <= n | Darbība |
---|---|---|---|
1 | i = 1 n = 5 | true | 1 ir iespiests. i tiek palielināts līdz 2 . |
2 | i = 2 n = 5 | true | 2 ir iespiests. i tiek palielināts līdz 3 . |
3 | i = 3 n = 5 | true | 3 ir iespiests. i tiek palielināts līdz 4 . |
4 | i = 4 n = 5 | true | 4 ir iespiests. i tiek palielināts līdz 5 . |
5 | i = 5 n = 5 | true | 5 ir iespiests. i ir palielināts līdz 6 . |
6 | i = 6 n = 5 | false | Cilpa ir pārtraukta |
2. piemērs: tikai pozitīvo skaitļu summa
// 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).`);
Rezultāts
Ievadiet skaitli: 2 Ievadiet numuru: 5 Ievadiet numuru: 7 Ievadiet numuru: 0 Ievadiet numuru: -3 Summa ir 14.
Iepriekš minētajā programmā lietotājam tiek piedāvāts ievadīt numuru.
Šeit parseInt()
tiek izmantots, jo prompt()
tiek ievadīta lietotāja ievadīta virkne. Un, kad tiek pievienotas ciparu virknes, tas darbojas kā virkne. Piemēram '2' + '3' = '23'
,. Tātad parseInt()
ciparu virkni pārveido par skaitli.
while
Cilpa turpinās līdz brīdim, kad lietotājs ievada negatīvu skaitli. Katras atkārtošanas laikā sum
mainīgajam tiek pievienots lietotāja ievadītais skaitlis .
Kad lietotājs ievada negatīvu skaitli, cilpa tiek pārtraukta. Visbeidzot tiek parādīta kopējā summa.
JavaScript do … kamēr Loop
do… while
Cilpas sintakse ir:
do ( // body of loop ) while(condition)
Šeit,
- Sākumā tiek izpildīts cilpas korpuss. Tad stāvoklis tiek novērtēts.
- Ja nosacījums tiek novērtēts uz
true
,do
paziņojuma iekšpusē esošās cilpas ķermenis tiek izpildīts vēlreiz. - Stāvoklis tiek novērtēts vēlreiz.
- Ja nosacījums tiek novērtēts uz
true
,do
paziņojuma iekšpusē esošās cilpas ķermenis tiek izpildīts vēlreiz. - Šis process turpinās, līdz stāvoklis novērtē
false
. Tad cilpa apstājas.
Piezīme : do… while
cilpa ir līdzīga while
cilpai. Vienīgā atšķirība ir tāda, ka do… while
ciklā cilpa ķermenis tiek izpildīts vismaz vienu reizi.
Plāna do… kamēr cikls

Apskatīsim do… while
cikla darbību.
3. piemērs: attēlot skaitļus no 1 līdz 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);
Rezultāts
1 2 3 4 5
Šī programma darbojas šādi.
Atkārtojums | Mainīgs | Nosacījums: i <= n | Darbība |
---|---|---|---|
i = 1 n = 5 | nav pārbaudīts | 1 ir iespiests. i tiek palielināts līdz 2 . | |
1 | i = 2 n = 5 | true | 2 ir iespiests. i tiek palielināts līdz 3 . |
2 | i = 3 n = 5 | true | 3 ir iespiests. i tiek palielināts līdz 4 . |
3 | i = 4 n = 5 | true | 4 ir iespiests. i tiek palielināts līdz 5 . |
4 | i = 5 n = 5 | true | 6 ir iespiests. i ir palielināts līdz 6 . |
5 | i = 6 n = 5 | false | Cilpa ir pārtraukta |
4. piemērs: pozitīvo skaitļu summa
// 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. izeja
Ievadiet skaitli: 2 Ievadiet numuru: 4 Ievadiet numuru: -500 Summa ir 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 )
Un while
un do… while
cilpas parasti izmanto, ja atkārtojumu skaits nav zināms. Piemēram,
while (condition) ( // body of loop )