筛选一个对象数组中在另一个对象数组中存在的部分
getCount(value, list) {
const d = list.filter((item) => {
item.nodeId === value;
});
return d[0]&&d[0].orderCount||0;
}
let arrList = [
{ name: "接单", value: 104001 },
{ name: "签到", value: 104002 },
{ name: "预约", value: 104003 },
{ name: "改约", value: 104004 },
{ name: "回单", value: 104005 },
];
nodeOrderCounts数据结构:
"nodeOrderCounts": [
{
"nodeId": 104033,
"orderCount": 10
},
{
"nodeId": 104001,
"orderCount": 10887
},
{
"nodeId": 104032,
"orderCount": 6
},
{
"nodeId": 104035,
"orderCount": 9
},
{
"nodeId": 104003,
"orderCount": 2046
},
{
"nodeId": 104034,
"orderCount": 72
},
{
"nodeId": 104002,
"orderCount": 427
},
{
"nodeId": 104005,
"orderCount": 106
},
{
"nodeId": 104004,
"orderCount": 3226
},
{
"nodeId": 104041,
"orderCount": 101
},
{
"nodeId": 104011,
"orderCount": 591
},
{
"nodeId": 104013,
"orderCount": 4
},
{
"nodeId": 104021,
"orderCount": 106
}
],
arrList.map((item)=>{
将筛选出的数组的每一个字段加到想要的这个数组中
item.dd= this.getCount(item.value,res.data.nodeOrderCounts)
})
也可这样写:
arrList.map((item) => {
const nop = res.data.nodeOrderCounts.filter((col) => {
return col.nodeId === item.value;
});
item.dd = nop[0].orderCount;
});