以下是数据源:
let arry = [
{
height: 1,
status: 1,
itemList: [
{
packingNum :1,
sku:'001'
}
{
packingNum :3,
sku:'003'
}
]
},
{
height: 1,
status: 1,
itemList: [
{
packingNum :3,
sku:'001'
}
]
},
{
height: 1,
status: 1,
itemList: [
{
packingNum :4,
sku:'002'
}
]
},
];
根据每一个itemList 中的sku的值,去找的其他对象中的有相同sku的 packingNum 进行相加(当前sku 的packingNum 不计算) ,将结果 otherPackingNum 添加道itemList 中
想要的结果是 这样的。
let arry = [
{
height: 1,
itemList: [
{
packingNum: 1,
sku:'001',
otherPackingNum: 8
},
{
packingNum :3,
sku:'003',
otherPackingNum: 0
}
]
},
{
height: 1,
itemList: [
{
packingNum :3,
sku:'001',
otherPackingNum: 6
}
]
},
{
height: 1,
itemList: [
{
packingNum :5,
sku:'001',
otherPackingNum: 4
}
]
},
{
height: 1,
itemList: [
{
packingNum :4,
sku:'002',
otherPackingNum: 0
}
]
},
];
虽然可以遍历,对每一个 item 去统计 otherPackingNum,但是这样会做不少重复的统计工作。一般认为统计工作是比较消耗时间的,所以可以考虑只统计一次,如下