Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Array-metoder «map», «filter» | Seksjon
Javascript-Grunnleggende

bookArray-metoder «map», «filter»

Sveip for å vise menyen

Arrayer må ofte transformeres eller filtreres for å lage nye versjoner basert på eksisterende data. JavaScript tilbyr høyereordens array-metoder som map og filter som gjør disse oppgavene konsise og lesbare.

Disse metodene hjelper deg å unngå manuelle løkker og lar deg fokusere på hva du ønsker å oppnå med dataene dine, i stedet for hvordan du skal gjøre det steg for steg. Bruk av høyereordens metoder fører til kode som er enklere å vedlikeholde, forstå og gjenbruke.

123456
// Using map to create a new array with doubled values const numbers = [1, 2, 3, 4]; const doubled = numbers.map(function(num) { return num * 2; }); console.log(doubled); // [2, 4, 6, 8]
copy

Når du bruker map, oppretter JavaScript et nytt array ved å kalle funksjonen din én gang for hvert element i det opprinnelige arrayet. Verdien som returneres av funksjonen din blir den nye verdien i det resulterende arrayet, og det opprinnelige arrayet endres ikke.

123456
// Using filter to create a new array with only even numbers const numbers = [1, 2, 3, 4, 5, 6]; const evens = numbers.filter(function(num) { return num % 2 === 0; }); console.log(evens); // [2, 4, 6]
copy

Med filter skal funksjonen din returnere true for å beholde et element eller false for å utelate det. Kun elementene som består testfunksjonen din blir inkludert i det nye arrayet, mens det opprinnelige arrayet forblir uendret.

Både map og filter går gjennom arrayet internt, så du trenger ikke å skrive en manuell løkke—de håndterer iterasjonen og bygger det nye arrayet for deg.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 13

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 1. Kapittel 13
some-alt