অ্যারে ফ্ল্যাটেনিং
অ্যারে ফ্ল্যাটেনিং হলো প্রদত্ত অ্যারেতে নেস্টেড অ্যারে গ্রুপকে মার্জ করে একক ডাইমেনশনাল অ্যারে বানানো।
অ্যারে ফ্ল্যাটেন করার দুটি পদ্ধতি
১) concat.apply()
নিচের উদাহরণে কিছু নেস্টেড অ্যারে আছে যেগুলো 3, 4, 5, 6 এলিমেন্ট ধারণ করে। concat() মেথড দিয়ে ফ্ল্যাটেন করার পর আউটপুট: 1, 2, 3, 4, 5, 6, 9।
উদাহরণ
<html> <body>
<script>
var arrays = [1, 2, [3, 4, [5, 6]], 9];
var merged = [].concat.apply([], arrays);
document.write(merged);
</script>
</body> </html>
আউটপুট
1,2,3,4,5,6,9
২) array.flat()
নিচের উদাহরণে নেস্টেড এলিমেন্ট আছে 2, 3, 4, 5, 6, 9। array.flat() মেথড দিয়ে ফ্ল্যাটেন করার পর আউটপুট: 1, 2, 2, 3, 4, 5, 6, 9।
উদাহরণ
<html> <body>
<script>
const arrays = [1, 2, [2, 3, [4, 5, [6, 9]]]];
const merged = arrays.flat(2); // depth 2
document.write(merged);
</script>
</body> </html>
আউটপুট
1,2,2,3,4,5,6,9
ব্যাখ্যা
flat() মেথড ES2019-এ যোগ করা হয়েছে। এটি depth প্যারামিটার নেয় (ডিফল্ট ১)। flat(Infinity) দিয়ে যেকোনো ডেপথের নেস্টেড অ্যারে ফ্ল্যাটেন করা যায়। concat.apply() পুরানো পদ্ধতি, শুধু এক লেভেল ফ্ল্যাটেন করে।