flatMap পদ্ধতি
flatMap পদ্ধতিটি একটি
নতুন অ্যারে ফেরত দেয়, যা তৈরি হয়
মূল অ্যারের প্রতিটি উপাদানে
প্যারামিটারে নির্দিষ্ট কলব্যাক
প্রয়োগ করার পরে।
প্রথম নজরে flatMap পদ্ধতিটি
map পদ্ধতির মতো মনে হয়, কিন্তু এর প্রধান পার্থক্য
হল এটি সর্বদা একটি এক-মাত্রিক অ্যারে ফেরত দেয়।
সিনট্যাক্স
let newArray = array.flatMap(function);
উদাহরণ
flatMap পদ্ধতি ব্যবহার করে
একটি নতুন অ্যারে পাওয়া যাক:
let arr = ['a', 'b', 'c'];
let res = arr.flatMap(function(elem) {
return elem + '!';
});
console.log(res);
কোড এক্সিকিউট করার ফলাফল:
['a!', 'b!', 'c!']
উদাহরণ
সংখ্যা নিয়ে গঠিত একটি মূল অ্যারে থেকে একটি নতুন অ্যারে পাওয়া যাক:
let arr = [1, 2, 3, 4, 5];
let res = arr.flatMap(function(elem) {
return elem + 2;
});
console.log(res);
কোড এক্সিকিউট করার ফলাফল:
[3, 4, 5, 6, 7]
উদাহরণ
প্রথম নেস্টিং লেভেল সহ একটি অ্যারে
flatMap পদ্ধতি প্রয়োগ করার চেষ্টা করা যাক:
let arr = [1, 2, 3, [4, 5]];
let res = arr.flatMap(function getElem(elem){
return elem + 2;
});
console.log(res);
কোড এক্সিকিউট করার পরে আমরা দেখতে পাব যে ফাংশনের শর্তগুলি সাব-অ্যারেতে প্রয়োগ করা হয়েছে, এটিকে একটি উপাদান হিসাবে ধরে নিয়ে। অতএব, নেস্টেড অ্যারেতে এই পদ্ধতিটি কল করা অর্থহীন:
[3, 4, 5, '4,52']
উদাহরণ
যদি আমরা নেস্টিং লেভেল নিয়ে চিন্তা না করে,
সম্পূর্ণ অ্যারে একত্রিত করতে চাই, তাহলে Infinity প্যারামিটার ব্যবহার করব:
let arr = ['a', 'b', ['c', 'd', ['e', 'f', ['g', 'h', ['i']]]]];
let res = arr.flatMap(Infinity);
console.log(res);
কোড এক্সিকিউট করার ফলাফল:
[
'a', 'b', 'c',
'd', 'e', 'f',
'g', 'h', 'i'
]
উদাহরণ
দুটি পদ্ধতি অ্যারেতে প্রয়োগ করা যাক:
flatMap এবং map, উভয় পদ্ধতির প্যারামিটারে
একটি ফাংশন নির্দিষ্ট করা হবে যা অ্যারেকে দ্বি-মাত্রিক করে তোলে:
let 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);
কোড এক্সিকিউট করার ফলাফল:
'map পদ্ধতি' [[3], [6], [9], [12], [15], [18]]
'flatMap পদ্ধতি' [3, 6, 9, 12, 15, 18]
আরও দেখুন
-
flatপদ্ধতি,
যা সাব-অ্যারে থেকে একটি অ্যারে ফেরত দেয়