flatMap နည်းလမ်း

flatMap နည်းလမ်းသည် မူလ array ၏ အစိတ်အပိုင်းတစ်ခုစီအား နည်းလမ်း၏ parameter တွင် ဖော်ပြထားသော callback ကို အသုံးပြုပြီးနောက် array အသစ်တစ်ခုကို ပြန်ပေးသည်။ ပထမတစ်ကြည့်တွင် flatMap နည်းလမ်းသည် map နည်းလမ်းနှင့် ဆင်တူသော်လည်း ၎င်း၏ အဓိက ကွာခြားချက်မှာ ၎င်းသည် အမြဲတမ်း တစ်ထပ်သာ ရှိသော array ကို ပြန်ပေးခြင်းဖြစ်သည်။

Syntax (ဖွဲ့စည်းပုံ)

javascriptlet newArray = array.flatMap(function);

ဥပမာ

flatMap နည်းလမ်းကို အသုံးပြု၍ array အသစ်တစ်ခုရယူကြပါစို့:

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

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

console.log(res);

ကုဒ်ကို run ပြီးနောက် ရလဒ်:

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

ဥပမာ

နံပါတ်များဖြင့် ဖွဲ့စည်းထားသော မူလ array မှ array အသစ်တစ်ခုရယူကြပါစို့:

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

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

console.log(res);

ကုဒ်ကို run ပြီးနောက် ရလဒ်:

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

ဥပမာ

ပထမအဆင့် ထပ်နေမှုရှိသော array တစ်ခုတွင် flatMap နည်းလမ်းကို အသုံးပြုကြည့်ကြပါစို့:

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

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

console.log(res);

ကုဒ်ကို run ပြီးနောက် ကျွန်ုပ်တို့တွေ့ရမည်မှာ လုပ်ဆောင်ချက်၏ အခြေအနေများသည် subarray ကို အစိတ်အပိုင်းတစ်ခုအဖြစ် ယူဆကာ ၎င်းတွင် အသုံးချခဲ့သည်။ ထို့ကြောင့် ထပ်နေသော array များတွင် ဤနည်းလမ်းကို ခေါ်ဆိုခြင်းသည် အဓိပ္ပာယ်မရှိပါ:

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

ဥပမာ

အကယ်၍ ကျွန်ုပ်တို့သည် ထပ်နေမှုအဆင့်ကို စိတ်မပူလို၊ သို့သော် array အားလုံးကို ပေါင်းစပ်လိုပါက Infinity parameter ကို အသုံးပြုပါ:

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

let res = arr.flatMap(Infinity);

console.log(res);

ကုဒ်ကို run ပြီးနောက် ရလဒ်:

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

ဥပမာ

array တစ်ခုတွင် နည်းလမ်းနှစ်ခုကို အသုံးပြုကြည့်ကြပါစို့: flatMap နှင့် map၊ ထို့အပြင် နည်းလမ်းနှစ်ခုလုံး၏ parameter တွင် array ကို နှစ်ထပ်ဖြစ်အောင်လုပ်ပေးသော လုပ်ဆောင်ချက်တစ်ခု ဖော်ပြထားပါမည်:

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

ကုဒ်ကို run ပြီးနောက် ရလဒ်:

javascript'map နည်းလမ်း' [[3], [6], [9], [12], [15], [18]]
'flatMap နည်းလမ်း' [3, 6, 9, 12, 15, 18]

ဤအကြောင်းကိုလည်း ကြည့်ရှုပါ

  • flat နည်းလမ်း၊
    အဘယ်နည်းလမ်းက subarray များမှ array ကို ပြန်ပေးသည်