I denne vejledning lærer du om while loop og do … while loop ved hjælp af eksempler.
Ved programmering bruges sløjfer til at gentage en blok kode. Hvis du f.eks. Vil vise en besked 100 gange, kan du bruge en loop. Det er bare et simpelt eksempel; du kan opnå meget mere med sløjfer.
I den foregående vejledning lærte du om JavaScript til loop. Her skal du lære om while
og do… while
sløjfer.
JavaScript mens loop
Sløjfens syntaks while
er:
while (condition) ( // body of loop )
Her,
- En
while
sløjfe evaluerer tilstanden inden for parentesen()
. - Hvis betingelsen evalueres til
true
,while
udføres koden inde i sløjfen. - Den betingelse igen evalueret.
- Denne proces fortsætter, indtil betingelsen er
false
. - Når tilstanden evalueres til
false
, stopper løkken.
Hvis du vil lære mere om betingelserne , skal du besøge JavaScript-sammenligning og logiske operatører.
Flowchart af mens Loop

Eksempel 1: Vis numre fra 1 til 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; )
Produktion
1 2 3 4 5
Sådan fungerer dette program.
Iteration | Variabel | Betingelse: i <= n | Handling |
---|---|---|---|
1. | i = 1 n = 5 | true | 1 er trykt. jeg øges til 2 . |
2. plads | i = 2 n = 5 | true | 2 er trykt. jeg øges til 3 . |
3. | i = 3 n = 5 | true | 3 er trykt. jeg øges til 4 . |
4. plads | i = 4 n = 5 | true | 4 er trykt. jeg øges til 5 . |
5. plads | i = 5 n = 5 | true | 5 er trykt. jeg øges til 6 . |
6. | i = 6 n = 5 | false | Sløjfen er afsluttet |
Eksempel 2: Kun summen af positive tal
// 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).`);
Produktion
Indtast et nummer: 2 Indtast et nummer: 5 Indtast et nummer: 7 Indtast et nummer: 0 Indtast et nummer: -3 Summen er 14.
I ovenstående program bliver brugeren bedt om at indtaste et nummer.
Her parseInt()
bruges, fordi det prompt()
tager input fra brugeren som en streng. Og når der tilføjes numeriske strenge, opfører det sig som en streng. For eksempel '2' + '3' = '23'
. Så parseInt()
konverterer en numerisk streng til nummer.
Den while
løkke fortsætter, indtil brugeren indtaster et negativt tal. Under hver iteration føjes det antal, der er indtastet af brugeren, til sum
variablen.
Når brugeren indtaster et negativt tal, afsluttes sløjfen. Endelig vises den samlede sum.
JavaScript gør … mens Loop
Syntaksen for do… while
loop er:
do ( // body of loop ) while(condition)
Her,
- Sløjfens krop udføres først. Derefter vurderes tilstanden .
- Hvis tilstanden evalueres til
true
,do
udføres sløjfens krop inde i udsagnet igen. - Den tilstand vurderes igen.
- Hvis tilstanden evalueres til
true
,do
udføres sløjfens krop inde i udsagnet igen. - Denne proces fortsætter, indtil tilstanden evalueres til
false
. Så stopper løkken.
Bemærk : do… while
loop svarer til while
loop. Den eneste forskel er, at i do… while
loop udføres kroppen af loop mindst én gang.
Flowchart of do … while Loop

Lad os se, hvordan do… while
sløjfen fungerer .
Eksempel 3: Vis numre fra 1 til 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);
Produktion
1 2 3 4 5
Sådan fungerer dette program.
Iteration | Variabel | Betingelse: i <= n | Handling |
---|---|---|---|
i = 1 n = 5 | ikke markeret | 1 er trykt. jeg øges til 2 . | |
1. | i = 2 n = 5 | true | 2 er trykt. jeg øges til 3 . |
2. plads | i = 3 n = 5 | true | 3 er trykt. jeg øges til 4 . |
3. | i = 4 n = 5 | true | 4 er trykt. jeg øges til 5 . |
4. plads | i = 5 n = 5 | true | 6 er trykt. jeg øges til 6 . |
5. plads | i = 6 n = 5 | false | Sløjfen er afsluttet |
Eksempel 4: Summen af positive tal
// 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).`);
Udgang 1
Indtast et nummer: 2 Indtast et nummer: 4 Indtast et nummer: -500 Summen er 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 )
Og while
og do… while
sløjfer bruges normalt, når antallet af gentagelser er ukendt. For eksempel,
while (condition) ( // body of loop )