V tej vadnici boste s pomočjo primerov spoznali zanko while in zanko… while.
Pri programiranju se zanke uporabljajo za ponavljanje bloka kode. Če želite na primer sporočilo prikazati 100-krat, lahko uporabite zanko. To je le preprost primer; z zankami lahko dosežete veliko več.
V prejšnji vadnici ste izvedeli o zanki JavaScript for. Tukaj boste spoznali while
in do… while
zanke.
JavaScript, medtem ko zanko
Sintaksa while
zanke je:
while (condition) ( // body of loop )
Tukaj,
while
Zanka ocenjuje stanje znotraj oklepaju()
.- Če pogoj oceni na
true
, se izvede koda znotrajwhile
zanke. - Stanje ponovno oceniti.
- Ta proces se nadaljuje, dokler se stanje je
false
. - Ko se stanje oceni na
false
, se zanka ustavi.
Če želite izvedeti več o pogojih , obiščite JavaScript Primerjalni in logični operaterji.
Diagram poteka zanke while
![](https://cdn.wiki-base.com/5344557/javascript_while_and_dowhile_loop_with_examples.png.webp)
Primer 1: Prikaži številke 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; )
Izhod
1 2 3 4 5
Tukaj je opisano, kako deluje ta program.
Ponavljanje | Spremenljiv | Stanje: i <= n | Ukrepanje |
---|---|---|---|
1. | i = 1 n = 5 | true | 1 je natisnjen. i se poveča na 2 . |
2. | i = 2 n = 5 | true | 2 je natisnjen. i se poveča na 3 . |
3. | i = 3 n = 5 | true | 3 je natisnjen. i se poveča na 4 . |
4. | i = 4 n = 5 | true | 4 je natisnjen. i se poveča na 5 . |
5. | i = 5 n = 5 | true | 5 je natisnjeno. i se poveča na 6 . |
6. | i = 6 n = 5 | false | Zanka je prekinjena |
Primer 2: Vsota samo pozitivnih števil
// 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).`);
Izhod
Vnesite številko: 2 Vnesite številko: 5 Vnesite številko: 7 Vnesite številko: 0 Vnesite številko: -3 Vsota je 14.
V zgornjem programu je uporabnik pozvan, da vnese številko.
Tu parseInt()
se uporablja, ker prompt()
vnese podatke uporabnika kot niz. In ko so dodani številski nizi, se obnaša kot niz. Na primer '2' + '3' = '23'
. Torej parseInt()
pretvori številski niz v število.
while
Zanka se nadaljuje, dokler uporabnik ne vnese z negativnim predznakom. Med vsako ponovitvijo se sum
spremenljivki doda številka, ki jo vnese uporabnik .
Ko uporabnik vnese negativno število, se zanka konča. Na koncu se prikaže skupna vsota.
JavaScript do … while Loop
Sintaksa do… while
zanke je:
do ( // body of loop ) while(condition)
Tukaj,
- Telo zanke se najprej izvede. Nato se stanje oceni.
- Če pogoj oceni na
true
, se telo zanke znotrajdo
stavka znova izvede. - Stanje se ocenjuje enkrat.
- Če pogoj oceni na
true
, se telo zanke znotrajdo
stavka znova izvede. - Ta postopek se nadaljuje, dokler stanje ne oceni na
false
. Nato se zanka ustavi.
Opomba : do… while
zanka je podobna while
zanki. Edina razlika je v tem, da se v do… while
zanki telo zanke izvede vsaj enkrat.
Diagram poteka do … while Loop
![](https://cdn.wiki-base.com/5344557/javascript_while_and_dowhile_loop_with_examples_2.png.webp)
Poglejmo, kako deluje do… while
zanka.
Primer 3: Prikaz številk 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);
Izhod
1 2 3 4 5
Tukaj je opisano, kako deluje ta program.
Ponavljanje | Spremenljiv | Stanje: i <= n | Ukrepanje |
---|---|---|---|
i = 1 n = 5 | ni preverjeno | 1 je natisnjen. i se poveča na 2 . | |
1. | i = 2 n = 5 | true | 2 je natisnjen. i se poveča na 3 . |
2. | i = 3 n = 5 | true | 3 je natisnjen. i se poveča na 4 . |
3. | i = 4 n = 5 | true | 4 je natisnjen. i se poveča na 5 . |
4. | i = 5 n = 5 | true | 6 je natisnjeno. i se poveča na 6 . |
5. | i = 6 n = 5 | false | Zanka je prekinjena |
Primer 4: Vsota pozitivnih števil
// 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).`);
Izhod 1
Vnesite številko: 2 Vnesite številko: 4 Vnesite številko: -500 Vsota 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 )
Zanke and while
in do… while
se običajno uporabljajo, kadar število ponovitev ni znano. Na primer
while (condition) ( // body of loop )