jq 读取时段并做处理

需求是读取插件的时段,时段是中国标准时间

由于以前就知道时间不能进行运算,所以刚开始时做的很复杂,先取得开始时间和结束时间,在开始时间的基础上进行操作后面的时间,逻辑非常复杂,需要考虑跨年跨月时对前后年月的影响,做到后面自己都晕菜了,然后就打算换一个思路,就去看了w3c的Date对象,查找了相关资料,发现几个有用的方法,很简单就完成了刚才很复杂的逻辑,逻辑是先获取时段的最大值最小值,这两个值是中国标准时间,转化为距今的毫秒数,再转化为数字,数字就可以操作了,是不是so easy

现在记录一下:

下面是js部分:

<script>
        var maxTime=new Date(this.time[1]),//最大值,中国标准时间
            minTime=new Date(this.time[0]),//最小值,中国标准时间
            days=(maxTime-minTime)/(1000*60*60*24),//天数
            weekFirstDate=new Date(minTime-(minTime.getDay())*86400000),//第一个周天
            weekLastDate=new Date((maxTime-(maxTime.getDay())*86400000)+6*86400000),//最后一个周六
            w1=parseFloat(Date.parse(minTime)),//第一天毫秒数字
            w2=parseFloat(Date.parse(maxTime)),//最后一天毫秒数字
            m1,getYear,getMon,getDate;
            m1=new Date(); 
            m1.setTime(w1);
            getYear=m1.getFullYear();
            getMon=m1.getMonth();
            getDate=m1.getDate(); 
            if(getMon<10){ 
              getMon="0"+(getMon+1); 
            }else{ 
              getMon=getMon+1; 
            }
            if(getDate<10){ 
              getDate="0"+getDate;
            } 
            console.log('year:'+getYear+',month:'+getMon+',date:'+getDate); 
            w1=w1-7*(1000*60*60*24);
</script>

参考资料:http://www.w3school.com.cn/jsref/jsref_obj_date.asp
http://blog.csdn.net/cdx1170776994/article/details/78905072

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值