JQ获取当前时间到目标时间的间隔

需求背景

今天开发的时候,有一个小需求是需要把某个值存如cookie,过期时间为第二天的0点。我们框架的cookie写入是以小时为单位传入的。那么我就想写一个方法计算当前时间到第二天0点的时间间隔。

    function GetTimeInterval() {
        var tomorrow = new Date();
        tomorrow.setTime(tomorrow.getTime() + 24 * 60 * 60 * 1000);
        var month = myDate.getMonth() + 1;
        var day = myDate.getDate();
        month = (month.toString().length == 1) ? ("0" + month) : month;
        day = (day.toString().length == 1) ? ("0" + day) : day;
        var tomorrowStr = myDate.getFullYear() + '-' + month + '-' + day+ ' 00:00:00';
        var nowTime = Date.parse(new Date());
        var tomorrowTime = Date.parse(new Date(tomorrowStr));
        var interval= (tomorrowTime- nowTime);        
        var hours = Math.floor(interval/1000/60);
        return hours;//返回间隔小时
    }

到这为止,我的需求就解决了。这里返回的单位是小时,如果需要返回其他单位,计算下即可。

 发散思维

我们也经常会碰到需要计算当前时间到某个时间的一个倒计时,例如高考倒计时还有: 100天10小时20分30秒。

    function CountDown (TargetTime) {//传入需要倒计时时间如:2022-01-01
        var nowTime = Date.parse(new Date());
        var toTime = Date.parse(new Date(TargetTime));
        var interval= (tomorrowTime- nowTime)/1000;    
        var day=Math.floor(interval/3600/24); 
        var hh=Math.floor((interval%(3600*24))/(60*60));   
        var mm=Math.floor(((interval%(3600*24))%(60*60))/60);
        var ss=((interval%(3600*24))%(60*60))%60;
        var hours = Math.floor(interval/1000/60);
        return '现在距离'+TargetTime+'还剩:'+day+' 天 '+hh+' 小时 '+mm+ ' 分 '+ss+' 秒 ';
    }

关注小禄每天分享开发中遇到的小需求。 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值