@adizh

Как сделать объект из двух массивов так, чтобы дубликаты суммировались?

let price=[100, 50,230, 50, 50, 34,160]

let datArr=['2022-4-14', '2022-4-19',  '2022-4-16',  '2022-4-19',  '2022-4-19',  '2022-4-19', '2022-4-14']

есть два массива , как сделать объект так:
{ '2022-4-14': 260, '2022-4-19': 184, '2022-4-16': 230 }

Если пробовать так:
let obj2={}

     for (let i = 0; i < datArr.length; i++) {
        obj2[datArr[i]] = price[i]
      } 
   console.log(obj2)

то выходит:
{ '2022-4-14': 160, '2022-4-19': 34, '2022-4-16': 230

Как можно суммировать price?
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
datArr.reduce((acc, cur, i) => (acc[cur] = (acc[cur] ?? 0) + price[i], acc), {});
// Object { "2022-4-14": 260, "2022-4-19": 184, "2022-4-16": 230 }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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