কম্পিউটার

জাভাস্ক্রিপ্ট অ্যারে অবজেক্ট দ্বারা গোষ্ঠী


ধরুন আমাদের কাছে এমন একটি অ্যারের অ্যারে রয়েছে যাতে কিছু বিষয়ে কিছু শিক্ষার্থীর মার্ক থাকে এইরকম −

const arr = [ ["English", 52], ["Hindi", 154], ["Hindi", 241], ["Spanish", 10], ["French", 65], ["German", 98], ["Russian", 10] ];

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

রিটার্ন অবজেক্টে প্রতিটি অনন্য বিষয়ের জন্য একটি বস্তু থাকা উচিত এবং সেই বস্তুটিতে সেই ভাষার উপস্থিতির সংখ্যা, মোট নম্বরের যোগফল এবং গড় তথ্য থাকা উচিত।

উদাহরণ

এর জন্য কোড হবে −

const arr = [
   ["English", 52],
   ["Hindi", 154],
   ["Hindi", 241],
   ["Spanish", 10],
   ["French", 65],
   ["German", 98],
   ["Russian", 10]
];
const groupSubjects = arr => {
   const grouped = arr.reduce((acc, val) => {
      const [key, total] = val;
      if(!acc.hasOwnProperty(key)){
         acc[key] = {
            'count': 0,
            'total': 0
         };
      };
      const accuKey = acc[key];
      accuKey['count']++;
      accuKey['total'] += total;
      accuKey['average'] = total / accuKey['count'];
      return acc;
   }, {});
   return grouped;
};
console.log(groupSubjects(arr));

আউটপুট

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

{
English: { count: 1, total: 52, average: 52 },
Hindi: { count: 2, total: 395, average: 120.5 },
Spanish: { count: 1, total: 10, average: 10 },
French: { count: 1, total: 65, average: 65 },
German: { count: 1, total: 98, average: 98 },
Russian: { count: 1, total: 10, average: 10 }
}

  1. কিভাবে জাভাস্ক্রিপ্টে আইডি দ্বারা অবজেক্টের অ্যারে গ্রুপ করবেন?

  2. নতুন অ্যারেতে জাভাস্ক্রিপ্ট অবজেক্ট ফরম্যাটিং

  3. JavaScript-এ Object.keys().map() VS Array.map()

  4. জাভাস্ক্রিপ্টে অবজেক্ট প্রপার্টি নামের অ্যারে প্রতিস্থাপন করা হচ্ছে