如何将JSON的键转为键值-xyp-hf

前几天被后端小伙伴捉弄了一些,实际上是这样的,他返回了一个json给我,像下面这样

{
    "status": "000",
    "msg": "成功"
    "list": [{
        "贵宾接待1室": [{
            "id": "600",
            "start_time": "09:00",
            "end_time": "10:00",
            "content": "张婷"
        }, {
            "id": "601",
            "start_time": "10:00",
            "end_time": "11:00",
            "content": "李俊"
        }, {
            "id": "602",
            "start_time": "13:00",
            "end_time": "14:00",
            "content": "张涛"
        }, {
            "id": "603",
            "start_time": "14:00",
            "end_time": "15:00",
            "content": "郑超"
        }]
    }],

}

大家会发现list数组里面套的json的,”贵宾接待1室”这个是json的键不是键值,而这个也是我要读取的数据,这时候我和后端说,我要下面这种格式的数据,结果他说他太忙了,没时间。
所以我只能自己弄,那就自己转吧,我们暂且从list[0]开始处理哈,自己给”贵宾接待室”这个数据加一个键,把他转化成键值。

//是这样的,我们封装这样一个函数
    function JsonAddKey(json){
        RiChengArr = [];
        for(var key in json){
            RiChengArr.push({RoomName:key,data:json[key]});
        }
        return RiChengArr;
    }

我们将“贵宾接待室”添加叫做“RoomName”键,后面的日程安排也添加一个“data”键;
这时候,我们将respMsg.list[0]传到我们刚刚封装的JsonAddKey(json)函数里面去。

JsonAddKey(respMsg.list[0]);
//我们也可以在将这组数据字符串化,先在控制台打出来看一看;
console.log(JSON.stringify(JsonAddKey(respMsg.list[0])));
//我们就会读取以下数据

[{
    "RoomName": "贵宾接待1室",
    "data": [{
        "id": "600",
        "start_time": "09:00",
        "end_time": "10:00",
        "content": "张婷"
    }, {
        "id": "601",
        "start_time": "10:00",
        "end_time": "11:00",
        "content": "李俊"
    }, {
        "id": "602",
        "start_time": "13:00",
        "end_time": "14:00",
        "content": "张涛"
    }, {
        "id": "603",
        "start_time": "14:00",
        "end_time": "15:00",
        "content": "郑超"
    }]
}]

这个时候,我们就能通过读取json的方式,把贵宾接待1室,贵宾接待2室等……通过遍历的方式写到页面啦!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值