Iteration Over Arrays Med For-Løkke
Korrekt array-manipulation begynder med løkker!
Du kender allerede til arrays, og at indeksering i dem starter fra nul. Du ved også, at vi i en for-løkke kan tildele enhver værdi til variablen i. For eksempel nul! Men hvad nu hvis det er praktisk for os at bruge en for-løkke sammen med et array? Lad os overveje det:
- Hvis vi skal hente et element fra arrayet, bruger vi
array[index];; - Vi har variablen
i, som effektivt erstatter vores indeks; - Ved at kombinere de to punkter ovenfor kan vi konkludere, at vi kan bruge syntaksen
array[i]inde i en for-løkke for hurtigt at arbejde med et array. Lad os se på et eksempel:
12345let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = 0; i < 10; i++) { console.log(`The ${i} element in the array is ${array[i]}`) }
Lad os gennemgå, hvad der sker i koden ovenfor:
- Vi opretter et array af typen
numbermed 10 elementer; - Målet er at inspicere hvert element i arrayet og finde ud af hvilket indeks det er placeret på;
- Da indeksering i arrayet starter fra 0, har vores variabel
ioprindeligt værdien 0. Vi sætter også grænsen lig med længden af arrayet, som er 10; - Da
ier elementets indeks, henter vi array-elementerne og viser dem på skærmen ved hjælp afarray[i];; - Da
ier indekset for elementet i arrayet, viser vi straks, hvilket indeks et bestemt element er placeret på.
På denne måde kan vi interagere med arrayet. Lad os stille os selv en anden opgave: at hente hvert element, der er placeret på et lige indeks i dette array:
12345let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = 0; i < 10; i+=2) { console.log(`The ${i} element in the array is ${array[i]}`) }
Ved at bruge i+=2, hvilket svarer til i = i + 2, henter vi hvert element i arrayet, der er placeret på en lige indeks. Med andre ord skal elementets indeks være deleligt med 2. Sådanne indekser er 0, 2, 4, 6 og så videre. Bemærk også, at vi med i kan vise elementets indeks, som vi gjorde i eksemplet ovenfor.
I øvrigt behøver vi ikke manuelt at tælle størrelsen på arrayet! Vi kan bruge array-egenskaben array.length. Lad os se på et eksempel, og samtidig se, hvordan man kan iterere gennem arrayet fra slutningen til begyndelsen (hvis du har brug for at gennemløbe arrayet i omvendt rækkefølge).
12345let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = array.length - 1; i >= 0; i--) { console.log(`The ${i} element in the array is ${array[i]}`) }
I eksemplet ovenfor initialiseres i som array.length - 1, fordi array.length er 10, og det sidste element i arrayet har indekset 9. Dette skyldes nul-baseret indeksering.
Derudover kan array.length anvendes ikke kun til initialisering, men også i betingelsen. Der findes mange forskellige eksempler på dette; det kræver blot lidt fantasi og specifikke anvendelsestilfælde. For eksempel:
123456789let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = 0; i < array.length; i++) { if ((array.length - i) % 2 == 0) { console.log(`The ${i} element in the array is ${array[i]}`) } else { console.log("[DELETED DATA]") } }
Hvis værdien af arrayets længde minus indekset er delelig med 2, vises dette element. Ellers vises 'DELETED DATA' - det er chefens ordre.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Can you explain how the last code example works in more detail?
What are some other ways to loop through an array in TypeScript?
Can you show how to use a for...of loop with arrays?
Awesome!
Completion rate improved to 2.94
Iteration Over Arrays Med For-Løkke
Stryg for at vise menuen
Korrekt array-manipulation begynder med løkker!
Du kender allerede til arrays, og at indeksering i dem starter fra nul. Du ved også, at vi i en for-løkke kan tildele enhver værdi til variablen i. For eksempel nul! Men hvad nu hvis det er praktisk for os at bruge en for-løkke sammen med et array? Lad os overveje det:
- Hvis vi skal hente et element fra arrayet, bruger vi
array[index];; - Vi har variablen
i, som effektivt erstatter vores indeks; - Ved at kombinere de to punkter ovenfor kan vi konkludere, at vi kan bruge syntaksen
array[i]inde i en for-løkke for hurtigt at arbejde med et array. Lad os se på et eksempel:
12345let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = 0; i < 10; i++) { console.log(`The ${i} element in the array is ${array[i]}`) }
Lad os gennemgå, hvad der sker i koden ovenfor:
- Vi opretter et array af typen
numbermed 10 elementer; - Målet er at inspicere hvert element i arrayet og finde ud af hvilket indeks det er placeret på;
- Da indeksering i arrayet starter fra 0, har vores variabel
ioprindeligt værdien 0. Vi sætter også grænsen lig med længden af arrayet, som er 10; - Da
ier elementets indeks, henter vi array-elementerne og viser dem på skærmen ved hjælp afarray[i];; - Da
ier indekset for elementet i arrayet, viser vi straks, hvilket indeks et bestemt element er placeret på.
På denne måde kan vi interagere med arrayet. Lad os stille os selv en anden opgave: at hente hvert element, der er placeret på et lige indeks i dette array:
12345let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = 0; i < 10; i+=2) { console.log(`The ${i} element in the array is ${array[i]}`) }
Ved at bruge i+=2, hvilket svarer til i = i + 2, henter vi hvert element i arrayet, der er placeret på en lige indeks. Med andre ord skal elementets indeks være deleligt med 2. Sådanne indekser er 0, 2, 4, 6 og så videre. Bemærk også, at vi med i kan vise elementets indeks, som vi gjorde i eksemplet ovenfor.
I øvrigt behøver vi ikke manuelt at tælle størrelsen på arrayet! Vi kan bruge array-egenskaben array.length. Lad os se på et eksempel, og samtidig se, hvordan man kan iterere gennem arrayet fra slutningen til begyndelsen (hvis du har brug for at gennemløbe arrayet i omvendt rækkefølge).
12345let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = array.length - 1; i >= 0; i--) { console.log(`The ${i} element in the array is ${array[i]}`) }
I eksemplet ovenfor initialiseres i som array.length - 1, fordi array.length er 10, og det sidste element i arrayet har indekset 9. Dette skyldes nul-baseret indeksering.
Derudover kan array.length anvendes ikke kun til initialisering, men også i betingelsen. Der findes mange forskellige eksempler på dette; det kræver blot lidt fantasi og specifikke anvendelsestilfælde. For eksempel:
123456789let array: number[] = [2, 4, 6, 1, 7, 1, 4, 77, 23, 0]; for (let i: number = 0; i < array.length; i++) { if ((array.length - i) % 2 == 0) { console.log(`The ${i} element in the array is ${array[i]}`) } else { console.log("[DELETED DATA]") } }
Hvis værdien af arrayets længde minus indekset er delelig med 2, vises dette element. Ellers vises 'DELETED DATA' - det er chefens ordre.
Tak for dine kommentarer!