কম্পিউটার

বস্তুর সংগ্রহ কমাতে এবং একত্রিত করার সর্বোত্তম উপায় কী - জাভাস্ক্রিপ্ট?


বস্তুর সংগ্রহ কমাতে এবং একত্রিত করার সর্বোত্তম উপায়, reduce() এর সাথে Object.values() ধারণাটি ব্যবহার করুন।

নিম্নলিখিত অবজেক্ট -

var details = [
   { studentId: 10, marks: 75, studentName: "John" },
   { studentId: 10, marks: 75, studentName: "John" },
   { studentId: 11, marks: 98, studentName: "Bob" }
];

উদাহরণ

কমাতে এবং একত্রিত করার কোড নিচে দেওয়া হল
var details = [
   { studentId: 10, marks: 75, studentName: "John" },
   { studentId: 10, marks: 75, studentName: "John" },
   { studentId: 11, marks: 98, studentName: "Bob" }
];
output = Object.values(details.reduce((value, object) => {
   if (value[object.studentId]) {
      ['marks'].forEach(key => value[object.studentId][key] = value[object.studentId][key] + object[key]);
      } else {
         value[object.studentId] = { ...object };
   }
   return value;
}, {}));
console.log(output);

উপরের প্রোগ্রামটি চালানোর জন্য, নিম্নলিখিত কমান্ডটি ব্যবহার করুন -

node fileName.js.

এখানে, আমার ফাইলের নাম demo237.js।

আউটপুট

আউটপুট নিম্নরূপ -

PS C:\Users\Amit\javascript-code> node demo237.js
[
   { studentId: 10, marks: 150, studentName: 'John' },
   { studentId: 11, marks: 98, studentName: 'Bob' }
]

  1. আমি একটি জাভাস্ক্রিপ্ট ত্রুটি প্রসারিত করতে পারি? এটা করার সেরা উপায় কি?

  2. জাভাস্ক্রিপ্টে একটি ইভেন্ট যোগ করার সেরা উপায় কি?

  3. জাভাস্ক্রিপ্ট ব্যবহার করে নতুন ব্রাউজার উইন্ডো খোলার সেরা উপায় কি?

  4. জাভাস্ক্রিপ্টে সাজানো তালিকায় একটি আইটেম অনুসন্ধান করার সর্বোত্তম উপায় কী?