js 比较两个数组,并进行替换掉

【js 比较两个数组,并进行替换掉】在实际开发过程中经常会需要对数据进行处理,比如接口返回数组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的值) })

    推荐阅读