Всем привет. Подскажите плиз как решить задачку

Есть массив объектов

[{title: 'Test', name: 'Stas', surname: 'Petrov'}, {title: 'Test', country: 'Russia', city: 'Moscow'}]

На выходе должен получиться один объект который будет объединен по ключу title

{title: 'Test', name: 'Stas', surname: 'Petrov', country: 'Russia', city: 'Moscow'}

Ответы (2 шт):

Автор решения: meine

const d = [{title: 'Test', name: 'Stas', surname: 'Petrov'}, {title: 'Test', country: 'Russia', city: 'Moscow'}];

const o = {};

d.forEach(n => {
  Object.assign(o, n);
});

console.log(o);

→ Ссылка
Автор решения: Sergei Kirjanov

const data = [{title: 'Test', name: 'Stas', surname: 'Petrov'}, {title: 'Test', country: 'Russia', city: 'Moscow'}]
console.log(data.reduce((a,b)=>({...a,...b}),{}))

С группировкой по title:

const data = [{title: 'Test', name: 'Stas', surname: 'Petrov'}, {title: 'Test2',a:2}, {title: 'Test', country: 'Russia', city: 'Moscow'}]

console.log(data.reduce((acc,el)=>({...acc,[el.title]:{...acc[el.title],...el}}),{}))

→ Ссылка