```javascript
let oldData = [
{ id: 1, price: 100, skuid: 233 },
{ id: 2, price: 200, skuid: 2311 },
{ id: 3, price: 300, skuid: 312 },
{ id: 4, price: 180, skuid: 23342 }
]
let newData = [
{ price: 136, skuid: 312 },
{ price: 195, skuid: 233 },
{ price: 155, skuid: 2311 }
]
let priceChange = []
一 双for循环判断
for (let i = 0; i < newData.length; i++) {
for (let j = 0; j < oldData.length; j++) {
if(newData[i].skuid == oldData[j].skuid){
priceChange.push({
'id':oldData[j].id,
'price':newData[i].price,
'skuid':newData[i].skuid
})
}
}
}
console.log(priceChange);
输出
二 obj.filter(),返回一符合要求的数组
for (let i in oldData) {
let old_skuid = oldData[i].skuid
if (i != oldData.length - 1) {
let res = newData.filter(item => {
return item.skuid == old_skuid
})
priceChange.push({
'skuid':res[0].skuid,
'price':res[0].price
})
}
}
console.log('priceChange',priceChange);
输出