কম্পিউটার

জাভাস্ক্রিপ্টে একটি অ্যারে সমতল করুন।


আমাদের একটি জাভাস্ক্রিপ্ট অ্যারে ফাংশন লিখতে হবে যা একটি নেস্টেড অ্যারে নেয় এবং অ্যারেতে উপস্থিত সমস্ত উপাদানের সাথে কোনো নেস্টিং ছাড়াই অ্যানারে ফেরত দেয়৷

যেমন −

//if the input is:
const arr = [[1, 2, 3], [4, 5], [6]];
//then the output should be:
const output = [1, 2, 3, 4, 5, 6];

অতএব, আসুন এই ফাংশনের জন্য কোড লিখি -

পদ্ধতি 1:পুনরাবৃত্তি ব্যবহার করা

এখানে আমরা মূল নেস্টেড অ্যারে লুপ করব এবং নেস্টেড উপাদানগুলিকে একটি নতুন অ্যারেতে পুশ করব৷

উদাহরণ

const arr = [[1, 2, 3], [4, 5], [6]];
const flatten = function(){
   let res = [];
   for(let i = 0; i < this.length; i++){
      if(Array.isArray(this[i])){
         res.push(...this[i].flatten());
      } else {
         res.push(this[i]);
      };
   };
   return res;
};
Array.prototype.flatten = flatten;
console.log(arr.flatten());

পদ্ধতি 2:Arrray.prototype.reduce() ব্যবহার করা

এখানে আমরা রিডুড() মেথড ব্যবহার করব এইরকম একটি নতুন অ্যারে তৈরি করতে -

উদাহরণ

const arr = [[1, 2, 3], [4, 5], [6]];
const flatten = function(){
   return this.reduce((acc, val) => {
      return acc.concat(...val);
   }, []);
};
Array.prototype.flatten = flatten;
console.log(arr.flatten());

আউটপুট

উভয় পদ্ধতির জন্য কনসোল আউটপুট হবে −

[ 1, 2, 3, 4, 5, 6 ]

  1. জাভাস্ক্রিপ্টে অ্যারে স্লাইস()

  2. জাভাস্ক্রিপ্টে অ্যারে শিফট()

  3. জাভাস্ক্রিপ্টে অ্যারে রিভার্স()

  4. জাভাস্ক্রিপ্টে অ্যারে ডি-স্ট্রাকচারিং।