在实际开发过程中经常会需要对数据进行处理,比如接口返回数组A和已有数据B,需要找到B跟A相同的对象,并替换B的值。实现如下:
数组A:
const A = [
{ id: 1, num: 10, attr: 'apple', spec: '红' },
{ id: 2, num: 11, attr: 'banana', spec: '甜' },
{ id: 3, num: 12, attr: 'peach', spec: '香' },
{ id: 4, num: 13, attr: 'grapes', spec: '圆' },
{ id: 5, num: 14, attr: 'pear', spec: '脆' },
{ id: 6, num: 15, attr: 'strawberry', spec: '大' },
]
const B = [
{ id: 4, num: 20, attr: 'grapes', spec: '又圆又大' },
{ id: 5, num: 30, attr: 'pear', spec: '又脆又甜' },
{ id: 6, num: 40, attr: 'strawberry', spec: '又香又甜' },
]
// 更新A中的数据
A.forEach((item1, index) => {
const res = B.filter(item2 => {
return item2.id == item1.id // 找到id一样的item
})
res[0] && A.splice(index, 1, res[0]) // 找到一样的item后,进行替换(B的值替换A的值)
})
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。