Vi har ofte brug for at gentage handlinger.
For eksempel at vise varer fra en liste én efter én eller bare køre den samme kode for hvert tal fra 1 til 10.
Løkker er en måde at gentage den samme kode flere gange på.
En lille meddelelse til avancerede læsere.
Denne artikel dækker kun grundlæggende løkker: while, do..while og for(..;..;..).
Hvis du kom til denne artikel for at søge efter andre typer løkker, er her nogle henvisninger:
- Se for…in for at løkke over objektets egenskaber.
- Se for…of og iterables for at løkke over arrays og iterable objekter.
Ellers, fortsæt bare med at læse.
“while” løkken
“while” løkken har følgende syntaks:
while (betingelse) {
// kode
// såkaldt "loop body" eller løkkens krop
}
Mens betingelsen er sand, udføres koden fra løkkens krop.
For eksempel viser løkken nedenfor i, mens i < 3:
let i = 0;
while (i < 3) { // viser 0, så 1, så 2
alert( i );
i++;
}
En enkelt udførelse af løkkens krop kaldes en iteration. Løkken i eksemplet ovenfor laver tre iterationer.
Hvis i++ manglede i eksemplet ovenfor, ville løkken gentage sig (i teorien) for evigt. I praksis giver browseren måder at stoppe sådanne løkker på, og i server-side JavaScript kan vi dræbe processen.
Enhver udtryk eller variabel kan være en løkkebetingelse, ikke kun sammenligninger: betingelsen evalueres og konverteres til en boolean af while.
For eksempel er en kortere måde at skrive while (i != 0) på while (i):
let i = 3;
while (i) { // når i bliver 0, bliver betingelsen falsy, og løkken stopper
alert( i );
i--;
}
Hvis løkkens krop har en enkelt sætning, kan vi udelade de krøllede parenteser {…}: