重新梳理数组数据

原数据格式:

{
   "status":1,
   "msg": "返回成功",
  "data": [
         {
         "name":"xxxx",
          "userId":"xxxxx",
         "pointiInfo": [ { 
                        "longitude":"134.3215",
                        "latitude":"25.3127",
                       "pointTime":"2018-09-01 12:12:10"
                       },
                        { 
                        "longitude":"134.3215",
                        "latitude":"25.3127",
                       "pointTime":"2018-09-01 12:12:10"
                       }
                     ]
                     
          }
     
     ] 
}

梳理后的数据格式

{
   "status":1,
   "msg": "返回成功",
  "data": [
         {
         "name":"xxxx",
          "userId":"xxxxx",
            "longitude":"134.3215",
             "latitude":"25.3127",
             "pointTime":"2018-09-01 12:12:10",
            "pointiInfo":null
                     
          },
{
         "name":"xxxx",
          "userId":"xxxxx",
            "longitude":"134.3215",
             "latitude":"25.3127",
             "pointTime":"2018-09-01 12:12:10",
            "pointiInfo":null
                     
          }
     
     ] 
}

所用代码如下

 var res=new Array();
                        d.data.map(item => {
                            item.pointiInfo.map(area => {
                               item.longitude =area.longitude;
                               item.latitude = area.latitude;
                               item.pointTime = area.pointTime;
                               item.pointDesc = area.pointDesc;
                               item.pointiInfo=null;
                               res.push(item);
                            })
                        })
                        console.log("历史",res);

原理:先定义一个res数组,然后遍历data数组,进一步遍历pointiInfo数组,把pointiInfo的数组取出,,放入新建的res数组。

DataTable列表

 var res=new Array();
                        d.data.map(item => {
                            item.pointiInfo.map(area => {
                               item.longitude =area.longitude;
                               item.latitude = area.latitude;
                               item.pointTime = area.pointTime;
                               item.pointDesc = area.pointDesc;
                               item.pointiInfo=null;
                               res.push(item);
                            })
                        })
                        console.log("历史",res);
                            var json = {
                            "data": res,
                            "iTotalRecords": res.size,
                            "iTotalDisplayRecords": res.total,
                        }
                        callback(json);

用for,因为map在IE下有兼容问题

var res=new Array();
                        var data=d.data;
                        for(var i=0; i<data.length; i++){
                            var area=data[i].pointiInfo;
                            if(area.length != 0 && area != null){
                                //  alert(JSON.stringify(area));
                                // debugger;
                                for(var j=0; j<area.length; j++){
                                    data[i].longitude =area[j].longitude;
                                    data[i].latitude = area[j].latitude;
                                    data[i].pointTime = area[j].pointTime;
                                    data[i].pointDesc = area[j].pointDesc;
                                    data[i].pointiInfo=null;
                                    res.push(data[i]);
                                    console.log("data[i]:",data[i])
                                }
                            
                            }
                           

                        }

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值