কম্পিউটার

একই কী মান দিয়ে জাভাস্ক্রিপ্ট অবজেক্ট একত্রিত করুন এবং তাদের গণনা করুন


ধরুন, আমাদের কাছে এই ধরনের বস্তুর একটি অ্যারে আছে −

const arr = [{
   "value": 10,
   "id": "111",
   "name": "BlackCat",
}, {
   "value": 10,
   "id": "111",
   "name":
   "BlackCat",
}, {
   "value": 15,
   "id": "777",
   "name": "WhiteCat",
}];

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

ফাংশনটি তখন সেই সমস্ত বস্তুকে একত্রে একত্রিত করতে হবে যেগুলির "id" বৈশিষ্ট্যের সাধারণ মান রয়েছে৷

অতএব, উপরের অ্যারের জন্য, আউটপুটটি −

এর মত হওয়া উচিত
const output = [{
   "value": 10,
   "id": "111",
   "name": "BlackCat",
   "count": 2,
}, {
   "value": 15,
   "id": "777",
   "name": "WhiteCat",
   "count": 1,
}]

উদাহরণ

const arr = [{
   "value": 10,
   "id": "111",
   "name": "BlackCat",
}, {
   "value": 10,
   "id": "111",
   "name": "BlackCat",
}, {
   "value": 15,
   "id": "777",
   "name": "WhiteCat",
}];
const combinedItems = (arr = []) => {
   const res = arr.reduce((acc, obj) => {
      let found = false;
      for (let i = 0; i < acc.length; i++) {
         if (acc[i].id === obj.id) {
            found = true;
            acc[i].count++;
         };
      }
      if (!found) {
         obj.count = 1;
         acc.push(obj);
      }
      return acc;
   }, []);
   return res;
}
console.log(combinedItems(arr));

আউটপুট

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

[
   { value: 10, id: '111', name: 'BlackCat', count: 2 },
   { value: 15, id: '777', name: 'WhiteCat', count: 1 }
]

  1. কিভাবে জাভাস্ক্রিপ্ট দিয়ে একটি বোতামের মান খুঁজে বের করবেন?

  2. জাভাস্ক্রিপ্ট দিয়ে একটি ইমেজের ইউজম্যাপ অ্যাট্রিবিউটের মান কীভাবে পাবেন?

  3. স্ট্রিং কী দিয়ে নেস্টেড জাভাস্ক্রিপ্ট অবজেক্ট অ্যাক্সেস করা

  4. জাভাস্ক্রিপ্টের সাথে একই অ্যারের একটি অ্যারের উপাদানগুলিকে কীভাবে নকল করবেন?