JS 实现倒计时功能(天,时,分,秒),以及当天倒计时

 

1.给定任意一个时间,然后实现现在到那个时间的倒计时。

下面的例子是显示现在到2021年1月1号0时0分的倒计时:

function showTime() {
    //获取目的日期
    var myyear = 2021; //
    var mymonth = 12 - 1; //月 只需要填写 - 前面的数字,这里是十二月
    var myday = 0; //
    var myhour = 00; //
    var myminute = 00; //
    var mysecond = 00; //
    //以上综合填入的时间是 2021年12月1号0时0分;
    var time = Number(new Date(myyear, mymonth, myday, myhour, myminute, mysecond));
    // var time=new Date(myyear,mymonth,myday,myhour,myminute,mysecond).getTime();
    //获取当前时间
    var nowTime = Date.now();
    // var nowTime = new Date().getTime();
    //获取时间差
    var timediff = Math.round((time - nowTime) / 1000);
    //获取还剩多少天
    var day = parseInt(timediff / 3600 / 24);
    //获取还剩多少小时
    var hour = parseInt(timediff / 3600 % 24);
    //获取还剩多少分钟
    var minute = parseInt(timediff / 60 % 60);
    //获取还剩多少秒
    var second = timediff % 60;
    //输出还剩多少时间
    console.log(timerFilter(day)+"天"+timerFilter(hour)+"时"+timerFilter(minute)+"分"+timerFilter(second)+"秒")
    setTimeout(showTime, 1000);
    
    //给小于10的数值前面加 0 
    function timerFilter(params) {
        if (params - 0 < 10) {
            return '0' + params
        } else {
            return params
        }
    }

}

 

 2.当前时间到当天23:59:59倒计时。(按F12在控制台执行函数就可以见到效果)

function showLeft() {
    //获取当前时间
    var nowTime = Date.now();
    // var nowTime = new Date().getTime();
    //获取当天 23:59 
    var endTime = new Date(new Date().toLocaleDateString()).getTime() + 24 * 60 * 60 * 1000 - 1
    //获取时间差
    var timediff = Math.round((endTime - nowTime) / 1000);
    //获取还剩多少小时
    var hour = parseInt(timediff / 3600 % 24) + parseInt(timediff / 3600 / 24) * 24;
    //获取还剩多少分钟
    var minute = parseInt(timediff / 60 % 60);
    //获取还剩多少秒
    var second = timediff % 60;
    //输出还剩多少时间
    hour = timerFilter(hour);
    minute = timerFilter(minute);
    second = timerFilter(second);

    console.log(hour + "时" + minute + "分" + second + "秒")
    setTimeout(showLeft, 1000);
    
    //给小于10的数值前面添加 0 
    function timerFilter(params) {
        if (params - 0 < 10) {
            return '0' + params
        } else {
            return params
        }
    }
}

 

posted @ 2019-07-29 14:49  william_new  阅读(3764)  评论(0编辑  收藏  举报