Spring til indhold
Academi.dk

JavaScript

while-løkken

Begynder DA↔EN-ordliste

En while-løkke gentager kode, så længe en betingelse er sand. Du bruger den, når du ikke på forhånd ved, hvor mange gange der skal køres, modsat for-løkken, hvor antallet er kendt. Du har selv ansvaret for, at betingelsen på et tidspunkt bliver falsk.

Forudsætter, at du har set for-løkken .

Når du ikke ved, hvor mange gange

En for-løkke passer, når du kan sige “gør det her fem gange” eller “gør det her for hvert element”. En while-løkke passer, når svaret er “bliv ved, indtil noget er tilfældet”.

Eksempel
let saldo = 1000;
let aar = 0;

while (saldo < 2000) {
saldo = saldo * 1.05;
aar = aar + 1;
}

console.log("Der gik " + aar + " år");

Output

Tryk på “Kør koden”.

Vi ved ikke på forhånd, hvor mange år der skal til. Det er derfor, while er den rigtige her.

Anatomien

En while-løkke består kun af en betingelse og en blok:

while (betingelse) {
  // kode der kører, så længe betingelsen er sand
}

Betingelsen tjekkes, før blokken kører hver gang. Er den falsk allerede fra starten, kører blokken slet ikke.

Eksempel
let i = 10;

while (i < 5) {
console.log("Det her ser du aldrig");
}

console.log("Færdig");

Output

Tryk på “Kør koden”.

do…while kører altid mindst én gang

Varianten do...while vender rækkefølgen om: blokken kører først, og tjekkes betingelsen.

Eksempel
let forsoeg = 0;

do {
forsoeg = forsoeg + 1;
console.log("Forsøg nummer " + forsoeg);
} while (forsoeg < 3);

Output

Tryk på “Kør koden”.

Den bruges, når noget skal ske mindst én gang, typisk når du beder om noget og vil have svaret, før du kan vurdere, om du skal spørge igen.

Eksempel
let tal = 1;
let gange = 0;

while (tal < 1000) {
tal = tal * 2;
gange = gange + 1;
}

console.log(tal + " efter " + gange + " fordoblinger");

Output

Tryk på “Kør koden”.

Hvornår vælger du hvad?

  • Kendt antal gange, eller alle elementer i et array: for.
  • Ukendt antal gange, betingelse afgør: while.
  • Skal køre mindst én gang: do...while.

I praksis kan begge løkker altid skrives om til den anden. Vælg den, der gør koden lettest at læse. Det er også det, der bliver bedømt til eksamen.

Kort opsamling

  • while gentager, så længe betingelsen er sand.
  • Betingelsen tjekkes før hvert gennemløb; do...while tjekker efter.
  • Der skal altid være noget inde i løkken, der ændrer betingelsen.
  • Brug for til kendte antal, while til ukendte.

Læs videre

Senest gennemgået .