为了账号安全,请及时绑定邮箱和手机立即绑定

获取重复 ID 并将所有数据添加到一个 ID 中

获取重复 ID 并将所有数据添加到一个 ID 中

FFIVE 2023-03-03 13:14:25
我想提取相同标题的对象并将所有数据添加到一个对象中。 new = [{        "data": [{ "displayName": "Peter pvt ltd", "name": "Peter Zon"}],        "title": "9/9/2020",    },{        "data": [{ "displayName": "Tom pvt ltd", "name": "Tom wang", }, { "displayName": "parker pvt ltd", "name": "parker wing", }],        "title": "9/9/2020",     }]我想要类似下面的东西:new = [{        "data": [{ "displayName": "Peter pvt ltd", "name": "Peter Zon", }, { "displayName": "Tom pvt ltd", "name": "Tom wang", }, { "displayName": "parker pvt ltd", "name": "parker wing", }],        "title": "9/9/2020",    }]
查看完整描述

1 回答

?
忽然笑

TA贡献1806条经验 获得超5个赞

您可以使用 javascript 中的Array.reduce方法对对象数组进行分组。


const objects = [{

        "data": [{ "displayName": "Peter pvt ltd", "name": "Peter Zon"}],

        "title": "9/9/2020",

    },{

        "data": [{ "displayName": "Tom pvt ltd", "name": "Tom wang", }, { "displayName": "parker pvt ltd", "name": "parker wing", }],

        "title": "9/9/2020", 

    }]


objects.reduce((acc,curr) => {

    const target = acc.find(item => curr.title === item.title); 

    if(target) {

      target.data = [...target.data, ...curr.data];

    } else {

       acc.push(curr);

    }

    return acc;

}, []);

//img1.sycdn.imooc.com//640182550001c08904710119.jpg

查看完整回答
反对 回复 2023-03-03
  • 1 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号