কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে অ্যারে চান্কিং (দ্বিগুণ উপাদানवाले সাবঅ্যারে তৈরি)

একটি অ্যারে গ্রহণ করে, তার উপাদানগুলো ২-২টি করে সাবঅ্যারে বানাতে হবে। যদি অ্যারের দৈর্ঘ্য বিজোড় হয়, তবে শেষ সাবঅ্যারেতে শুধু ১টি উপাদান থাকবে।

উদাহরণ

ইনপুট: [1, 2, 3, 4, 5, 6, 7]

আউটপুট: [[1, 2], [3, 4], [5, 6], [7]]

উদাহরণ কোড

const arr = [1, 2, 3, 4, 5, 6, 7];

const chunk = arr => {
  const size = 2;
  const chunkedArray = [];
  
  for (let i = 0; i < arr.length; i++) {
    const last = chunkedArray[chunkedArray.length - 1];
    if (!last || last.length === size) {
      chunkedArray.push([arr[i]]);
    } else {
      last.push(arr[i]);
    }
  }
  
  return chunkedArray;
};

console.log(chunk(arr));

আউটপুট

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

ব্যাখ্যা

  • size = 2 ফিক্সড চান্ক সাইজ।
  • লুপে প্রতিটি উপাদানের জন্য চেক করা হয়: শেষ সাবঅ্যারে না থাকে বা সেটি পূর্ণ হয়েছে কিনা।
  • পূর্ণ হলে নতুন সাবঅ্যারে শুরু করা হয়, নাহলে শেষ সাবঅ্যারেতে পুশ করা হয়।

মডার্ন বিকল্প (slice দিয়ে)

const chunkModern = (arr, size = 2) => 
  Array.from({ length: Math.ceil(arr.length / size) }, (_, i) => 
    arr.slice(i * size, i * size + size)
  );

console.log(chunkModern([1,2,3,4,5,6,7])); // [[1,2],[3,4],[5,6],[7]]

জেনেরিক ফাংশন (যেকোনো চান্ক সাইজের জন্য)

const chunkArray = (arr, chunkSize) => {
  const res = [];
  for (let i = 0; i < arr.length; i += chunkSize) {
    res.push(arr.slice(i, i + chunkSize));
  }
  return res;
};
  1. জাভাস্ক্রিপ্ট const কীওয়ার্ড

  2. জাভাস্ক্রিপ্ট JSON অ্যারে

  3. জাভাস্ক্রিপ্টে Const এবং Let এর পার্থক্য

  4. জাভাস্ক্রিপ্টে অ্যারে vs সেট