103 of 264 menu

Метад map

Метад map дазваляе ўжыць зададзеную функцыю для кожнага элемента масіва. Пры гэтым метад не змяняе зыходны масіў, а вяртае зменены.

Метад у параметры атрымлівае функцыю, якая выканаецца для кожнага элемента масіва. Toе, што верне гэтая функцыя праз return для элемента масіва, стане новым значэннем гэтага элемента (гл. прыклады).

У функцыю можна перадаваць 3 параметры. Калі гэтыя параметры ёсць (яны не абавязковыя), то ў першы аўтаматычна трапіць элемент масіва, ў другі трапіць яго нумар у масіве (індэкс), а ў трэці - сам масіў.

Сінтаксіс

let новы масіў = масіў.map(function(элемент, індэкс, масіў) { код return зменены элемент; });

Прыклад

Стварым масіў, кожны элемент якога ўдвойчы большы за адпаведны элемент пачатковага масіва:

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

Вынік выканання кода:

[2, 4, 6, 8, 10]

Прыклад

Стварым масіў, кожны элемент якога атрымліваецца так - значэнне элемента множыцца на яго парадкавы нумар у масіве:

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

Вынік выканання кода:

[0, 2, 6, 12, 20]

Прыклад

Пры неабходнасці ў трэці параметр можна перадаць сам масіў:

let arr = [1, 2, 3, 4, 5]; let res = arr.map(function(elem, index, arr) { тут будзе даступны масіў arr });

Прыклад

Метад map можна выкарыстоўваць і для перабору шматмерных масіваў. Хай, напрыклад, дадзены вось такі масіў:

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

Давайце перабяром гэты масіў праз map і вывядзем яго элементы ў кансоль:

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

У выніку console.log вывяде [1, 2, 3], потым [4, 5, 6], потым [7, 8, 9].

Як вы бачыце, у зменную elem трапляюць падмасівы. Давайце цяпер ужыем метад map да кожнага падмасіва і возьмем кожны яго элемент у квадрат:

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);

Глядзіце таксама

  • метад forEach,
    які ўжывае функцыю для кожнага элемента масіва
  • метад filter,
    які дазваляе фільтраваць элементы масіва
  • метады some і every,
    якія выконваюць праверку масіва
  • метады reduce і reduceRight,
    якія згортваюць масіў да аднаго значэння
Беларуская
AfrikaansAzərbaycanБългарскиবাংলাČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць