a64654612 2023-02-08 02:33 采纳率: 88%
浏览 74
已结题

数组对象和数组对象里的数组对象数据应该如何转换?

问题遇到的现象和发生背景
将a转换为b,麻烦帮忙写的详细点,谢谢

 a : [
    {
         users: [
            {
                userId: 1,
                codeId":11112222,
                
            },
            {
                userId: 2,
                codeId":11112222,
            }
        ],
        startTime: 1,
        endTime: 2
    }
]

 b : [
      {
        nodes:[
          {
        "codeId": "11112222",
        "List": []
         },
        ],
      arr: [startTime, endTime], 
     },
    
]
 

 

展开全部

  • 写回答

5条回答 默认 最新

  • 社区专家-Monster-XH 2023-02-08 02:44
    关注

    用下面的方法转换数组对象:

    
    let a = [    {         users: [            {                userId: 1,                codeId":11112222,
                    
                },
                {
                    userId: 2,
                    codeId":11112222,            }        ],
            startTime: 1,
            endTime: 2
        }
    ];
    
    let b = a.map(item => {
        let nodes = item.users.map(user => ({
            codeId: user.codeId,
            List: [{ userId: user.userId.toString() }]
        }));
        return {
            nodes,
            arr: [item.startTime, item.endTime]
        };
    });
    
    

    代码中使用了 Array.map() 方法将 a 数组中的每个对象转换成 b 数组中的每个对象。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
    a64654612 2023-02-08 02:55

    我搞错了,List应该是个数组字符串 List:['1', '2'] 这样的,麻烦可以帮忙改一下下嘛

    回复
    社区专家-Monster-XH 2023-02-08 02:55

    如果想把转换后的数据,赋给另一个可以直接赋值: let b = a.map(...); 这样 b 就会被赋值为转换后的数据。。赋值语句 let b = a.map(...); 的意思是将 a.map(...) 的结果赋给变量 b。所以 b 的值就是 a 经过 map 转换后的数据。

    回复
    社区专家-Monster-XH 回复 a64654612 2023-02-08 02:59

    e,你的意思是?在原来的上面改?

    回复
    展开全部7条评论
查看更多回答(4条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 2月15日
  • 已采纳回答 2月8日
  • 修改了问题 2月8日
  • 修改了问题 2月8日
  • 展开全部
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部