猿问

怎么合并两个数组

怎么合并两个数组呢,把data2里对应id的remark放进data1对应的id这里面,最终效果就是data3这样


const data1 = [

    { "id": 1, "url": "1111" },

    { "id": 2, "url": "111" },

    { "id": 3, "url": "22222" },

    { "id": 4, "url": "222" },

    { "id": 5, "url": "2222" },

    { "id": 6, "url": "22222是" }

]

const data2 = [

    { "id": 1, "remark": "备注1" },

    { "id": 2, "remark": "备注2" },

    { "id": 3, "remark": "" },

    { "id": 4, "remark": "" },

    { "id": 5, "remark": "" },

    { "id": 6, "remark": "beizhu6" }

]

function fun(arr1, arr2) {

    arr1.map(item => {

        arr2.map(item2 => {

            if (item.id == item2.id) {


            }

        });

    });

    arr2 = [];

    return arr1

}

fun(data1,data2);


data3=[

    { "id": 1, "url": "1111", "remark": "备注1" },

    { "id": 2, "url": "111", "remark": "备注2" },

    { "id": 3, "url": "22222", "remark": "" },

    { "id": 4, "url": "222", "remark": "" },

    { "id": 5, "url": "2222", "remark": "" },

    { "id": 6, "url": "22222是", "remark": "beizhu6" }

]


开心每一天1111
浏览 470回答 7
7回答

慕妹3146593

const data3 = []for (let i = 0; i < data1.length; i++) {&nbsp; &nbsp; data3.push({&nbsp; &nbsp; &nbsp; &nbsp; ...data1[i],&nbsp; &nbsp; &nbsp; &nbsp; ...data2[i],&nbsp; &nbsp; })}

一只甜甜圈

data1.map(o=>({...o,...data2.filter(v=>v.id===o.id).shift()}))// 如果两个数组的结构一定相同:data1.map((o, i) => ({ ...o, ...data2[i] }))

波斯汪

基本上只能通过数值映射或者循环两个数组来处理
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答