利用js写一个倒计时
我们在这里写一个两小时的倒计时,且每次到点都会重新开始一次计时
话不多说,直接上代码。
原理:
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的效果。
(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧(๑•̀ㅂ•́)و✧
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?