ধরুন, আমাদের কাছে এই ধরনের দুটি বস্তু আছে -
const obj1 = { a:12, b:8, c:17 }; const obj2 = { a:2, b:4, c:1 };
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এই ধরনের দুটি বস্তু নেয়।
ফাংশন একটি একক বৈশিষ্ট্য অভিন্ন বৈশিষ্ট্য মান যোগ করা উচিত. অতএব, চূড়ান্ত বস্তুটি দেখতে এইরকম কিছু হওয়া উচিত -
const output = { a:14, b:12, c:18 };
দ্রষ্টব্য − সরলতার জন্য, আমরা শুধু দুটি অবজেক্ট ব্যবহার করেছি, কিন্তু আমাদের ফাংশনটি এমনভাবে লিখতে হবে যাতে এটি যেকোনো সংখ্যক অবজেক্ট নিতে পারে এবং তাদের সম্পত্তির মান যোগ করতে পারে।
উদাহরণ
const obj1 = { a:12, b:8, c:17 }; const obj2 = { a:2, b:4, c:1 }; const sumObjectsByKey = (...objs) => { const res = objs.reduce((a, b) => { for (let k in b) { if (b.hasOwnProperty(k)) a[k] = (a[k] || 0) + b[k]; } return a; }, {}); return res; } console.log(sumObjectsByKey(obj1, obj2));
আউটপুট
এবং কনসোলে আউটপুট হবে −
{ a: 14, b: 12, c: 18 }