flatMap ක්‍රමය

flatMap ක්‍රමය නව අරාවක් ආපසු ලබා දෙයි, මුල් අරාවේ එක් එක් මූලද්‍රව්‍යයට ක්‍රමයේ පරාමිතියේ දක්වා ඇති callback, යෙදීමෙන් පසුව එය නිර්මාණය වේ. පළමු බැල්මට flatMap ක්‍රමය map ක්‍රමයට සමාන බව පෙනේ, නමුත් එහි ප්‍රධාන වෙනස එය සැමවිටම තනි මාන අරාවක් ආපසු ලබා දීමයි.

වාක්‍ය රීතිය

javascriptlet newArray = array.flatMap(function);

උදාහරණය

අපි flatMap ක්‍රමය භාවිතා කර, නව අරාවක් ලබා ගනිමු:

javascriptlet arr = ['a', 'b', 'c'];

let res = arr.flatMap(function(elem) {
  return elem + '!';
});

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript['a!', 'b!', 'c!']

උදාහරණය

අංක වලින් සමන්විත, මුල් අරාවෙන් නව අරාවක් ලබා ගනිමු:

javascriptlet arr = [1, 2, 3, 4, 5];

let res = arr.flatMap(function(elem) {
  return elem + 2;
});

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[3, 4, 5, 6, 7]

උදාහරණය

පළමු බහුතරයේ ගැඹුරක් සහිත අරාවකට flatMap ක්‍රමය යෙදීමට උත්සාහ කරමු:

javascriptlet arr = [1, 2, 3, [4, 5]];

let res = arr.flatMap(function getElem(elem){
  return elem + 2;
});

console.log(res);

කේතය ක්‍රියාත්මක කිරීමෙන් පසු ශ්‍රිතයේ කොන්දේසි උපඅරාවට යෙදී ඇති බව අපට පෙනේ, එය එක් මූලද්‍රව්‍යයක් ලෙස ගණන් කරයි. එමනිසා, මෙම ක්‍රමය කැඳවීම ගැඹුරු අරා වල අර්ථයක් නැත:

javascript[3, 4, 5, '4,52']

උදාහරණය

අපට ගැඹුරු මට්ටම ගැන කරදර නොවී, සම්පූර්ණ අරාව ඒකාබද්ධ කිරීමට අවශ්‍ය නම්, අපි Infinity පරාමිතිය භාවිතා කරමු:

javascriptlet arr = ['a', 'b', ['c', 'd', ['e', 'f', ['g', 'h', ['i']]]]];

let res = arr.flatMap(Infinity);

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[
  'a', 'b', 'c',
  'd', 'e', 'f',
  'g', 'h', 'i'
]

උදාහරණය

අපි අරාවකට ක්‍රම දෙකක් යොදමු: flatMap සහ map, එපමණක් නොව ක්‍රම දෙකේම පරාමිති වල අරාව ද්විමාන කරන ශ්‍රිතයක් නියම කර ඇත:

javascriptlet arr = [1, 2, 3, 4, 5, 6];
let res1 = arr.map(elem => [elem * 3]);
let res2 = arr.flatMap(elem => [elem * 3]);

console.log('map ක්‍රමය', res1);
console.log('flatMap ක්‍රමය', res2);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript'map ක්‍රමය' [[3], [6], [9], [12], [15], [18]]
'flatMap ක්‍රමය' [3, 6, 9, 12, 15, 18]

මෙයද බලන්න

  • flat ක්‍රමය,
    යමුපඅරා වලින් අරාවක් ආපසු ලබා දෙයි