Как из нескольких объектов сделать один, сложив значения свойств с одинаковыми именами?

Имеется два объекта:

var dmg1 = {
  "nick1": 100,
  "nick2": 50
}

var dmg2 = {
  "nick1":50,
  "nick2":150
}

Нужно объединить их в один:

var dmg3 = {
  "nick1":150,
  "nick2":150
}

То есть, нужно сложить значения ключей объектов и получить "объединённый" объект, как это сделать?
  • Вопрос задан
  • 256 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const sum = (...arr) => arr
  .flatMap(Object.entries)
  .reduce((acc, [ k, v ]) => (
    acc[k] = (acc[k] ?? 0) + v,
    acc
  ), {});


const obj = sum(obj1, obj2);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Вам нужно сложить поля в объектах, так и складывайте их
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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