103 of 264 menu

map методу

map методу массивдин ар бир элементи үчүн белгиленген функцияны колдонууга мүмкүндүк берет. Бул учурда метод баштапкы массивди өзгөртпөйт, тескерисинче өзгөртүлгөн массивди кайтарат.

Метод параметр катары массивдин ар бир элементи үчүн ишке ашырыла турган функцияны алат. Бул функциянын return аркылуу массив элементи үчүн кайтарып бергени, ошол элементтин жаңы мааниси болуп калат (мисалдарды караңыз).

Функцияга 3 параметр берүүгө болот. Эгерде бул параметрлер бар болсо (алар милдеттүү эмес), анда биринчиси автоматтык түрдө массивдин элементине, экинчиси анын массивдеги номуруна (индексине), үчүнчүсү массивдин өзүнө түшөт.

Синтаксис

let жаңы массив = массив.map(function(элемент, индекc, массив) { код 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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу