【数据结构转换】【时间】01-16

数据结构转换

前言

    生产生活中,很多企业使用的是sql数据库,业务中,为减少数据库访问、减少数据向前端传输,我选择更改数据格式
    通过二维数据格式,转化为树状结构。

    因为入职半年,加上业务较小,无人指导,现分享出来,供大家借鉴指正。
function sortData(Data){
        var vernier,reData,X0,X1;
        reData = [];
        for(var i = 0;i<Data.length;i++){
            vernier = Data[i].START_DATE_TIME.substring(0,10);
            X0 = Data[i].START_DATE_TIME.substring(0,10);
            X1 = Data[i].END_DATE_TIME || new Date();
            if(typeof X1 === 'object'){
                X1 = X1.getFullYear() + "-" + (X1.getMonth() + 1) + "-" + X1.getDate()
            }
            X1 = X1.substring(0,10);
            var dateArr = inside(X0,X1,1)

            for(var j=0;j<dateArr.length;j++){
                vernier = dateArr[j];
                !!reData[dateArr[j]]?reData[dateArr[j]].push(Data[i]):reData[dateArr[j]] = [Data[i]]
            }
            //debugger;
        }
        return reData
    }

    function inside(X0,X1,Interval){
        var popArr = [];
        var firstInt = new Date(X0);
        var secondInt = (new Date(X1) - firstInt);
        var days = Math.abs(secondInt / 86400000);
        var freq = Math.ceil(days / Interval);
        var i = 0;
        var thenDate = 0;
        while (i <= freq) {
            thenDate = new Date(firstInt - 0 + i * Interval * 86400000);
            thenDate = thenDate.getFullYear() + "-" + (thenDate.getMonth() + 1) + "-" + thenDate.getDate(); 
            popArr.push(thenDate);
            i++;
        }
        return popArr;
    }

心向无暇

人不装B伪少年,by h.k


2018年1月16日
看源码是爱好、解决问题是职业——h.k

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值