Javascript 添加子对象的公共属性,并使用父键(Node.js)将其追加
我想添加公共属性,即同一个键的total_quantity_Seld,并将其与父索引一起附加为total 这是我的产品阵列,我有Javascript 添加子对象的公共属性,并使用父键(Node.js)将其追加,javascript,node.js,lodash,Javascript,Node.js,Lodash,我想添加公共属性,即同一个键的total_quantity_Seld,并将其与父索引一起附加为total 这是我的产品阵列,我有 { '900001': [ anonymous { id: '900001', name: 'Pack1', product: 2017-11-02T13:49:25.596Z, total_quantity_sold: '1' }, anonymous { id: '900001'
{ '900001':
[ anonymous {
id: '900001',
name: 'Pack1',
product: 2017-11-02T13:49:25.596Z,
total_quantity_sold: '1' },
anonymous {
id: '900001',
name: 'Pack1',
product: 2018-02-11T13:49:25.596Z,
total_quantity_sold: '4' },
anonymous {
id: '900001',
name: 'Pack1',
product: 2017-12-02T13:49:25.596Z,
total_quantity_sold: '1' } ],
'900002':
[ anonymous {
id: '900002',
name: 'Pack2',
product: 2018-01-02T13:49:25.596Z,
total_quantity_sold: '1' },
anonymous {
id: '900002',
name: 'Pack2',
product: 2017-11-02T13:49:25.596Z,
total_quantity_sold: '1' },
anonymous {
id: '900002',
name: 'Pack2',
product: 2018-02-11T13:49:25.596Z,
total_quantity_sold: '4' } ],}
我想对所有数量求和,并将其与父键一起追加,以便最终数组如下所示。实际上,我希望填充图形时需要总计数以及每个日期的计数
{ '900001':
'total' : 6
[ {
name: 'Pack1',
product: 2017-11-02T13:49:25.596Z,
total_quantity_sold: '1' },
{
name: 'Pack1',
product: 2018-02-11T13:49:25.596Z,
total_quantity_sold: '4' },
{
name: 'Pack1',
product: 2017-12-02T13:49:25.596Z,
total_quantity_sold: '1' } ],
'900002':
'total' : 7
[ {
name: 'Pack2',
product: 2018-01-02T13:49:25.596Z,
total_quantity_sold: '2' },
{
name: 'Pack2',
product: 2017-11-02T13:49:25.596Z,
total_quantity_sold: '1' },
{
name: 'Pack2',
product: 2018-02-11T13:49:25.596Z,
total_quantity_sold: '4' } ],}
谢谢你没问题!您可以通过传递哈希表中的每个条目来完成,并将其替换为希望就位的目标对象。我们还可以使用一个简单的减速机来计算销售数量的总和 ES7路
工作很有魅力!非常感谢!
Object.entries(obj).forEach(a => {
const [key, children] = a
const total = children.reduce((p,c) => p+c.total_quantity_sold, 0)
obj[key] = {total, children}
})