ধরা যাক, আমাদের কাছে নিচের মতো অবজেক্টের একটি অ্যারে রয়েছে:
const arr = [{a: 2, b: 5, c: 6}, {a:3, b: 4, d:1},{a: 1, d: 2}];
প্রতিটি অবজেক্ট নিজস্বে ইউনিক কী রাখে (বৈধ অবজেক্ট হতে), কিন্তু দুটি ভিন্ন অবজেক্টে সাধারণ কী থাকতে পারে (এই প্রশ্নের উদ্দেশ্যে)।
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এমন একটি অ্যারে নেয় এবং একটি অবজেক্ট রিটার্ন করবে যেখানে অ্যারেতে থাকা সকল ইউনিক কী এবং তাদের মানগুলোর ক্যুমুলেটিভ যোগফল মান হিসেবে থাকবে।
তাহলে, ফলাফল অবজেক্টটি হবে:
const output = {a: 6, b: 9, c: 6, d: 3};
উদাহরণ
নিচের কোডটি দেখুন:
const arr = [{a: 2, b: 5, c: 6}, {a: 3, b: 4, d:1}, {a: 1, d: 2}];
const sumArray = arr => {
const res = {};
for(let i = 0; i < arr.length; i++){
Object.keys(arr[i]).forEach(key => {
res[key] = (res[key] || 0) + arr[i][key];
});
};
return res;
};
console.log(sumArray(arr));
আউটপুট
এটি কনসোলে নিচের আউটপুট তৈরি করবে:
{ a: 6, b: 9, c: 6, d: 3 }