JavaScript: For-løkker
En for-løkke er et av de mest grunnleggende verktøyene i programmering. Den lar deg kjøre en blokk med kode flere ganger, noe som er perfekt for oppgaver som krever repetisjon.
1. Den grunnleggende for-løkken
En for-løkke består av tre deler inni parentesen som sammen styrer hvor mange ganger koden skal kjøre.
Syntaks
for (start; betingelse; endring) {// Kode som skal gjentas
}
- Start: Oppretter telleren (f.eks.
let i = 0). Kjøres kun én gang. - Betingelse: Sjekkes før hver runde. Koden
kjører kun hvis denne er sann (f.eks.
i < 10). - Endring: Oppdaterer telleren etter hver
runde (f.eks.
i++).
2. Eksempel: Telle til 100
Her er eksempelet vi nevnte innledningsvis. Vi starter på 1,
fortsetter så lenge i er mindre eller lik 100, og øker
med 1 for hver runde.
Slik skriver vi ut tallene 1-100:
console.log(i);
}
3. Tørrkjøring (Tracing)
Viktig i starten: Kjør en "tørrkjøring" (tracing) , dvs. en tabell som viser hvordan datamaskinen tenker steg for steg:
console.log("Dette er runde nummer " + i);
}
| Runde | Verdi av i | Sjekki <= 5 | Handling console.log | Oppdatering i++ |
|---|---|---|---|---|
| 1 | 1 | Ja (true) | "Runde 1" | 1 + 1 = 2 |
| 2 | 2 | Ja (true) | "Runde 2" | 2 + 1 = 3 |
| 3 | 3 | Ja (true) | "Runde 3" | 3 + 1 = 4 |
| 4 | 4 | Ja (true) | "Runde 4" | 4 + 1 = 5 |
| 5 | 5 | Ja (true) | "Runde 5" | 5 + 1 = 6 |
| 6 | 6 | Nei (false) | Løkken avsluttes | - |
4. Bruk av indeksvariabelen
Gange med i
Vi kan bruke i i utregninger inne i løkken.
for (let i = 1; i <= 10; i++) {
console.log("5 x " + i + " = " + (5*i));
}
Endre steget
Vi må ikke øke med 1 hver gang. Vi kan øke med 2, eller telle nedover.
for (let i = 10; i > 0; i--) {
console.log("Nedtelling: " + i);
}
// Partall opp til 10
for (let i = 0; i <= 10; i += 2) {
console.log(i);
}
5. For-løkker og Arrays
Vi bruker ofte løkker til å gå gjennom lister (arrays). Telleren i brukes som indeks. Som alltid starter på 0! .length gir oss lengden på arrayet og dette kan brukes
til å bestemme siste runde i løkken.
for (let i = 0; i < frukter.length; i++) {
console.log(frukter[i]);
}
Prøv selv: Arrays
Se hvordan i peker på elementene.
🗝️ Sentrale begreper
- For-løkke: En kontrollstruktur som gjentar kode et bestemt antall ganger.
- Iterasjon: En enkelt "runde" eller gjennomkjøring av løkken.
- Indeks (i): Telleren som holder styr på hvor langt løkken har kommet. Brukes ofte til å hente elementer fra arrays.
- Array.length: Forteller hvor mange plasser det er i listen, som vi bruker for å vite når vi skal stoppe.
- Uendelig løkke: Hvis betingelsen aldri blir usann
(f.eks. glemmer
i++), vil løkken kjøre evig og krasje programmet.