倒计时算法(计算剩余多少天)实现

一.使用时间对象的getTime()方法获取所有的毫秒数

二.将指定时间的毫秒数和当前时间的毫秒数相减得到中间相差的毫秒数

三.每一天的毫秒数为:1000606024 就是1000毫秒60秒60分24小时等于一天的毫秒数

四.倒过来用总的毫秒数除以一天的毫秒数再使用parseInt方法取整就可以得到整天数

五.相处剩下的我们可以使用取余进行得到

所以采用的计算规则如下:

  ·整天:总的毫秒数 / 一天的毫秒数

  ·小时:(总的毫秒数 / 一个小时的毫秒数) % 24小时(因为整小时部分已经被整天拿走了,相除剩下的就是剩余小时数量,再取余24小时就可以得到剩下多少个小时)

  ·分钟和小时的计算一样,去掉整分钟数,用余下的分钟数 % 60分钟就可以得到剩下的分钟数

  ·秒的计算一样
复制代码
function getRestTime(){
    var setTime = new Date("2019/9/18 00:00:00");
    var nowTime = new Date();
    var restSec = setTime.getTime() - nowTime.getTime();
    var day = parseInt(restSec / (60*60*24*1000));
    var hour = parseInt(restSec / (60*60*1000) % 24);
    var min = parseInt(restSec / (60*1000) % 60);
    var sec = parseInt(restSec / 1000 % 60);
    return `剩余${day}天${hour}时${min}分${sec}秒`
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值