У меня проблема с функцией redu ().
Предположим, у меня есть этот массив:
myOrders =
[ { order_date: '2019/12/01', order_type: 'Shoes', order_amount: 50 }
, { order_date: '2019/12/01', order_type: 'Shoes', order_amount: 30 }
, { order_date: '2019/12/01', order_type: 'Shirts', order_amount: 30 }
, { order_date: '2019/12/02', order_type: 'Shoes', order_amount: 10 }
]
Мне нужно придумать что-то вроде ниже:
filteredOrders = [
{
order_date: '2019/12/01',
ordered_items: {
{type: 'Shoes', amount: 80},
{type: 'Shirts', amount: 30}
}
}
]
Обратите внимание, что этот фильтрованный массив запрашивает date
и суммирует amount
на type
.
У меня есть фрагмент кода ниже, но я не могу сделать это работает с учетом type
тоже
let seriesData = Object.entries(
buyOperations.reduce(
(dvs, { order_date: d, order_amount: v }) =>
({ ...dvs, [d]: (dvs[d] || 0) + v }), {}
)
).map(([order_date, order_amount]) => ({
order_date,
order_amount
}));