„JavaScript while and do ... while Loop“ (su pavyzdžiais)

Š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

  1. whileKilpa įvertina būklę viduje skliausteliuose ().
  2. Jei sąlyga įvertinama true, whilevykdomas ciklo viduje esantis kodas .
  3. Būklė vertinama dar kartą.
  4. Šis procesas tęsiasi tol, kol sąlyga yra false.
  5. 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 = 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ų.

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

  1. Iš pradžių atliekamas kilpos kūnas. Tada būklė įvertinama.
  2. Jei būklė vertinama į true, dosakinio viduje esančios kilpos kūnas vėl vykdomas.
  3. Būklė vėl vertinamas.
  4. Jei būklė vertinama į true, dosakinio viduje esančios kilpos kūnas vėl vykdomas.
  5. Š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 = 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 whileir do… whilekilpos dažniausiai naudojamos, kai nežinomas pakartojimų skaičius. Pavyzdžiui,

 while (condition) ( // body of loop )

Įdomios straipsniai...