Как добавить в массив объектов свойство по id в других массивах объектов?

есть массив cont sum = [ {id: 1, name: 'a'}, {id: 2, name: 'b'}]
есть массив cont arr1 = [ {id: 1, cat: '1'}, {id: 2, cat: '6'}]
есть массив cont arr2 = [ {id: 1, s: '2'}, {id: 2, s: '6'}]

надо получить const res = [{id: 1, name: 'a', cat: '1', s: '2'}, {id: 2, name: 'b', cat: '6', s: '6'}]
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const merge = (key, ...arrs) =>
  Object.values(arrs.flat().reduce((acc, n) => (
    Object.assign(acc[n[key]] ??= {}, n),
    acc
  ), {}));


const result = merge('id', sum, arr1, arr2);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы