倒计时:
首先要知道当前时间,还有目标时间,并且算出之间的时差
function timeCount(){
var target=new Date('2019/8/14 19:58:00').getTime(),
now=new Date().getTime(),
time=target-now; //时间差 是毫秒数,然后在转成时分秒
if(time <= 0){
clearInterval(timer); //该行作用就是,当倒计时走到00时00分00秒的时候,就让定时器停止。
return
}
再去获得这些毫秒数中有几个整数小时,然后在用剩余的毫秒数中整数分钟,然后在取剩余的毫秒数中去整数秒数
var hours=parseInt(time/(1000*60*60)); //一小时对应的毫秒数
time=time-hours*1000*60*60;
var minutes=parseInt(time/(1000*60)); //一分钟对应的毫秒数
time=time-minutes*1000*60;
var seconds=parseInt(time/1000); //一秒钟对应的毫秒数
time=time-seconds*1000;
紧接着,如果到上面那部结束的话,也会出现想要的结果,但是为了看着整洁,我们在时分秒前面补零,别说,还真的是美观。
if(hours<10){
//这一步,就代表当时钟数字小于10的时候,系统自动补零。以下同理。
hours='0'+hours;
}
if(minutes<10){
minutes='0'+minutes;
}
if(seconds<10){
seconds='0'+seconds;
}
这一步就很直观了,定义一个变量,把得到的时分秒用字符串拼接起来,就能得到我们想要的结果了。
var str = `${hours}时${minutes}分${seconds}秒`;
document.getElementById('time1').innerHTML =str;
}
这步就是在利用定时器让整个程序运行
var timer=setInterval(()=>{
timeCount(); //距离结束还有几时几分几秒
},1000)//1000代表的就是1s