我们在这里写一个两小时的倒计时,且每次到点都会重新开始一次计时,话不多说,直接上代码。
写法:
Date.parse()会将日期时间转换为毫秒数,所以可以通过两个时间的毫秒数相减得到一个倒计时;
首先要了解Date.parse()中的值要是"2022-9-16 16:00:00"这种时间写法,或者是newDate()当前的时间点;
所以我们通过new Date.getFullYear(),new Date.getMonth()+1,new Date.getDate()来分别获取当前的年月日(注意:月份是从第0位开始算,所以得到的值要+1才是当前月份),
然后通过+拼接字符串的得到"2022-9-46"这种形式;
之后再通过new Date().getHours()获取当前的小时,因为我们写的是两小时的倒计时,所以我们在这里用三目运算符判断当计时开始后两小时后是几点,避免当14时开始倒计时,结束时间应该是16点,而到15点时,重新计时,结束时间变为17点;
现在我们年月日时间都有了,通过拼接nian+" "+shi+":00:00"来获得"2022-9-16 16:00:00"这种格式;
用Date.parse(之前拼接得到的时间)-Date.parse(new Date())就得到了两个时间的毫秒差值;
用毫秒差值进行计算,将还剩多少毫秒转换为还剩多少时多少分多少秒;
最后通过定时器来让方法重复执行,就可以得到图2的效果。
(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧