vue合并数组问题

let arr1 = [
    {
        "attachment": "https://lumall.inspures.com/images/img/product/8e358701-177a-46e1-b25e-1e13fbcd92e0.png"
    },
    {
        "attachment": "https://lumall.inspures.com/images/img/product/2adcd34a-786f-43ac-b8a8-3c45ed408019.png"
    }
]
let arr2 = [
    {
        "attachment": "blob:http://localhost:8096/9b565718-7799-440b-b761-de747f2d59c5",
        "number": 0,
        "id": ""
    },
    {
        "attachment": "blob:http://localhost:8096/1d826622-bc72-466f-8778-30dcaf773489",
        "number": 1,
        "id": ""
    }
]

最终想要的数据格式如下:把arr2的attachment替换成arr1的attachment,感谢各位

 [
    {
        "attachment": "https://lumall.inspures.com/images/img/product/8e358701-177a-46e1-b25e-1e13fbcd92e0.png",
        "number": 0,
        "id": ""
    },
    {
        "attachment": "https://lumall.inspures.com/images/img/product/2adcd34a-786f-43ac-b8a8-3c45ed408019.png",
        "number": 1,
        "id": ""
    }
]
阅读 2.4k
4 个回答
arr2.map((item,index)=>{
    item.attachment=arr1[index].attachment
    return item
})
let newArr = arr2.map((v,k)=>({...v, ...arr1[k]}));
arr2.forEach((item,index)=>item.attachment = arr1[index].attachment)
function merge(a, b) {
    var ret = [];
    for (var i = 0; i < a.length; ++i) {
        var obj = {};
        for (var key in b[i]) obj[key] = b[i][key];
        for (var key in a[i]) obj[key] = a[i][key];
        ret.push(obj);
    }
    return ret;
}
console.dir(merge(arr1, arr2));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题