JavaScript while and do ... while Loop (s primjerima)

U ovom ćete tutorijalu uz primjere naučiti o petlji while i o petlji… while.

U programiranju se petlje koriste za ponavljanje bloka koda. Na primjer, ako želite poruku prikazati 100 puta, tada možete koristiti petlju. To je samo jednostavan primjer; petljama možete postići puno više.

U prethodnom uputstvu saznali ste o petlji JavaScript for. Ovdje ćete naučiti whilei do… whilepetlje.

JavaScript dok petlja

Sintaksa whilepetlje je:

 while (condition) ( // body of loop )

Ovdje,

  1. whilePetlja procjenjuje stanja unutar zagrada ().
  2. Ako se uvjet procijeni na true, whileizvršava se kod unutar petlje.
  3. Stanje se ocjenjuje opet.
  4. Taj se postupak nastavlja sve dok stanje nije false.
  5. Kada se stanje procijeni na false, petlja se zaustavlja.

Da biste saznali više o uvjetima , posjetite JavaScript usporedbu i logičke operatore.

Dijagram toka while Loop

Dijagram toka JavaScript petlje while

Primjer 1: Prikaz brojeva 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; )

Izlaz

 1 2 3 4 5

Evo kako ovaj program radi.

Iteracija Promjenjiva Stanje: i <= n Akcijski
1. i = 1
n = 5
true 1 je tiskan. ja se povećava na 2 .
2. i = 2
n = 5
true 2 je tiskan. ja se povećava na 3 .
3. i = 3
n = 5
true Ispisuje se 3. ja se povećava na 4 .
Četvrti i = 4
n = 5
true Ispisuje se 4. ja se povećava na 5 .
5. i = 5
n = 5
true Ispisuje se 5. ja se povećava na 6 .
6. i = 6
n = 5
false Petlja je prekinuta

Primjer 2: Zbroj samo pozitivnih brojeva

 // 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).`);

Izlaz

 Unesite broj: 2 Unesite broj: 5 Unesite broj: 7 Unesite broj: 0 Unesite broj: -3 Zbroj je 14.

U gore navedenom programu od korisnika se traži da unese broj.

Ovdje parseInt()se koristi jer prompt()uzima unos od korisnika kao niz. A kad se dodaju numerički nizovi, ponaša se kao niz. Na primjer, '2' + '3' = '23'. Dakle, parseInt()pretvara numerički niz u broj.

whilePetlja se nastavlja sve dok korisnik ne unese negativan broj. Tijekom svake iteracije sumvarijabli se dodaje broj koji je unio korisnik .

Kada korisnik unese negativan broj, petlja se završava. Na kraju se prikazuje ukupni zbroj.

JavaScript radi … dok petlja

Sintaksa do… whilepetlje je:

 do ( // body of loop ) while(condition)

Ovdje,

  1. Prvo se izvršava tijelo petlje. Tada se stanje ocjenjuje.
  2. Ako se uvjet procijeni na true, tijelo petlje unutar doizraza ponovno se izvršava.
  3. Stanje se ocjenjuje jednom.
  4. Ako se uvjet procijeni na true, tijelo petlje unutar doizraza ponovno se izvršava.
  5. Taj se postupak nastavlja sve dok stanje ne procijeni na false. Tada se petlja zaustavlja.

Napomena : do… whilepetlja je slična whilepetlji. Jedina razlika je u tome što se u do… whilepetlji tijelo petlje izvršava barem jednom.

Dijagram toka do … while Loop

Dijagram toka JavaScript-a do … while petlja

Pogledajmo kako se radi do… whilepetlja.

Primjer 3: Prikaz brojeva 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);

Izlaz

 1 2 3 4 5

Evo kako ovaj program radi.

Iteracija Promjenjiva Stanje: i <= n Akcijski
i = 1
n = 5
nije provjereno 1 je tiskan. ja se povećava na 2 .
1. i = 2
n = 5
true 2 je tiskan. ja se povećava na 3 .
2. i = 3
n = 5
true Ispisuje se 3. ja se povećava na 4 .
3. i = 4
n = 5
true Ispisuje se 4. ja se povećava na 5 .
Četvrti i = 5
n = 5
true 6 je tiskan. ja se povećava na 6 .
5. i = 6
n = 5
false Petlja je prekinuta

Primjer 4: Zbroj pozitivnih brojeva

 // 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).`);

Izlaz 1

 Unesite broj: 2 Unesite broj: 4 Unesite broj: -500 Zbroj 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 )

I whilei do… whilepetlje se obično koriste kada je broj iteracija nepoznat. Na primjer,

 while (condition) ( // body of loop )

Zanimljivi članci...