ধরুন, আমাদের কাছে এই ধরনের বস্তুর একটি অ্যারে আছে −
const arr = [ {name: 'lorem', age: 20, color:'red'}, {name: 'lorem', weight: 1, height:5} , {name: 'hello', ipsum : 'dolor'} ];
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এমন একটি অ্যারে অবজেক্টে নেয়। ফাংশনটি সেই বস্তুগুলির সমস্ত বৈশিষ্ট্যকে গোষ্ঠীভুক্ত করা উচিত যেগুলির মধ্যে "নাম" বৈশিষ্ট্যের মান রয়েছে৷
যেমন −
উপরের অ্যারের জন্য, আউটপুট −
এর মত হওয়া উচিতconst output = [ {name: 'lorem', age : 20, color: 'red', weight : 1, height : 5}, {name: 'hello', ipsum : 'dolor'} ];
উদাহরণ
এর জন্য কোড হবে −
const arr = [ {name: 'lorem', age: 20, color:'red'}, {name: 'lorem', weight: 1, height:5} , {name: 'hello', ipsum : 'dolor'} ]; const mergeList = (arr = []) => { const temp = {}; arr.forEach(elem => { let name = elem.name; delete elem.name; temp[name] = { ...temp[name], ...elem }; }); const res = []; Object.keys(temp).forEach(key => { let object = temp[key]; object.name = key; res.push(object); }); return res; }; console.log(mergeList(arr));
আউটপুট
এবং কনসোলে আউটপুট হবে −
[ { age: 20, color: 'red', weight: 1, height: 5, name: 'lorem' }, { ipsum: 'dolor', name: 'hello' } ]