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

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


মান লজিয়ে, আমাদের ডেটা স্টোরেজ ডিভাইস সম্পর্কিত তথ্য ধারণকারী একটি অবজেক্টের অ্যারে আছে নিচের মতো −

const drives = [
  {size:"900GB", count:3},
  {size:"900GB", count:100},
  {size:"1200GB", count:5},
  {size:"900GB", count:1}
];

লক্ষ্য করুন একই size কতবার রিপিট হয়েছে।

আমাদের একটি ফাংশন লিখতে হবে যা এমন একটি অ্যারে নেয় এবং একই size-গুলোকে একটাই অ্যারে ইনডেক্স-এ একত্রিত করবে এবং অবশ্যই তাদের count-গুলো যোগ করবে।

উদাহরণ

const drives = [
  {size:"900GB", count:3},
  {size:"900GB", count:100},
  {size:"1200GB", count:5},
  {size:"900GB", count:1}
];
const groupDrives = (arr = []) => {
  const map = drives.reduce((map, e) => {
    if (e.size in map) map[e.size].count += e.count
    else map[e.size] = e
    return map;
  }, {})
  const result = Object.keys(map).map(function (k) {
    return this[k]
  }, map);
  return result;
}
console.log(groupDrives(drives));

আউটপুট

কনসোলে আউটপুট হবে −

[ { size: '900GB', count: 104 }, { size: '1200GB', count: 5 } ]

  1. জাভাস্ক্রিপ্টে অ্যারে-র মিলে যাওয়া এলিমেন্ট গ্রুপ করা

  2. জাভাস্ক্রিপ্টে অ্যারে সর্ট করে নির্দিষ্ট এলিমেন্টকে ডিফল্ট মান হিসেবে রাখুন

  3. জাভাস্ক্রিপ্টে অবজেক্টের অ্যারে কম্বাইন করা

  4. জাভাস্ক্রিপ্টে অ্যারেতে undefined এলিমেন্ট গণনা করা