Как сложить одинаковые элементы в 2D массиве по первому ключу
Есть массив данных, состоящий из суммы нескольких массивов (поставки товаров в разные даты), нужно суммировать все повторяющиеся значения по первому ключу и поместить результат во второй массив.
let a = [
["A",1], ["B",1], ["D",1], ["F",3], ["A",7], ["D",8], ["F",4],
]
Результатом должен быть массив:
let b = [
["A",8], ["B",1], ["D",9], ["F",7]
]
Ответы (1 шт):
Автор решения: ksa
→ Ссылка
Есть массив данных, состоящий из суммы нескольких массивов (поставки товаров в разные даты), нужно суммировать все повторяющиеся значения по первому ключу и поместить результат во второй массив
Такое можно проделать следующим образом...
const a = [
["A",1], ["B",1], ["D",1], ["F",3], ["A",7], ["D",8], ["F",4],
]
const b = [...a.reduce((m, [k, v]) => m.set(k, (m.get(k) ?? 0) + v), new Map)]
console.log(b)