map ක්රමය
map ක්රමය අරාවක සෑම අංගයක් සඳහාම
ලබා දී ඇති ශ්රිතය යෙදීමට ඉඩ සලසයි.
මෙම ක්රමය මුල් අරාව වෙනස් නොකරම,
වෙනස් කරන ලද අරාවක් ලබා දෙයි.
ක්රමය පරාමිතියක් ලෙස අරාවේ සෑම අංගයක් සඳහාම
ක්රියාත්මක වන ශ්රිතයක් ලබා ගනී.
එම ශ්රිතය 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);