103 of 264 menu

De map methode

De methode map maakt het mogelijk om een opgegeven functie toe te passen op elk element van een array. De methode wijzigt de oorspronkelijke array niet, maar retourneert een gewijzigde array.

De methode ontvangt als parameter een functie die wordt uitgevoerd voor elk element van de array. Wat deze functie retourneert via return voor het array-element, wordt de nieuwe waarde van dat element (zie voorbeelden).

Er kunnen 3 parameters aan de functie worden doorgegeven. Als deze parameters aanwezig zijn (ze zijn niet verplicht), dan komt het array-element automatisch in de eerste, zijn volgnummer in de array (index) in de tweede, en de array zelf in de derde.

Syntaxis

let nieuweArray = array.map(function(element, index, array) { code return gewijzigdElement; });

Voorbeeld

Laten we een array maken waarvan elk element tweemaal zo groot is als het corresponderende element van de beginarray:

let arr = [1, 2, 3, 4, 5]; let res = arr.map(function(elem) { return elem * 2; }); console.log(res);

Resultaat van de code-uitvoering:

[2, 4, 6, 8, 10]

Voorbeeld

Laten we een array maken waarvan elk element als volgt wordt verkregen - de waarde van het element wordt vermenigvuldigd met zijn volgnummer in de array:

let arr = [1, 2, 3, 4, 5]; let res = arr.map(function(elem, index) { return elem * index; }); console.log(res);

Resultaat van de code-uitvoering:

[0, 2, 6, 12, 20]

Voorbeeld

Indien nodig kan de array zelf als derde parameter worden doorgegeven:

let arr = [1, 2, 3, 4, 5]; let res = arr.map(function(elem, index, arr) { hier is de array arr beschikbaar });

Voorbeeld

De methode map kan ook worden gebruikt voor het doorlopen van multidimensionale arrays. Stel, bijvoorbeeld, dat we de volgende array hebben:

let arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];

Laten we deze array doorlopen met map en zijn elementen naar de console loggen:

let arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; let result = arr.map(function(elem) { console.log(elem); });

Als resultaat zal console.log achtereenvolgens [1, 2, 3], dan [4, 5, 6], en dan [7, 8, 9] uitvoeren.

Zoals je ziet, komen de subarrays in de variabele elem terecht. Laten we nu de methode map toepassen op elke subarray en elk element ervan kwadrateren:

let arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; let result = arr.map(function(elem) { return elem.map(function(num) { return num * num; }); }); console.log(result);

Zie ook

  • de methode forEach,
    die een functie toepast voor elk element van de array
  • de methode filter,
    die het mogelijk maakt elementen van de array te filteren
  • de methoden some en every,
    die een controle op de array uitvoeren
  • de methoden reduce en reduceRight,
    die een array reduceren tot een enkele waarde
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren