天天看点

定时器应用0x01定时器基础0x02时钟0x03倒计时0x04精确倒计时0x05秒表0x06闹钟

本文属于定时器的应用部分,分别用于实现与时间相关的四个应用,包括时钟、倒计时、秒表和闹钟。与时间相关需要用到时间和日期对象Date,可自行查阅。

最简单的时钟制作办法是通过正则表达式的exec()方法,将时间对象的字符串中的时间部分截取出来,使用定时器刷新即可。

简易倒计时

  简易倒计时就是每1s通过setInterval将设置的时间减去1来达到要求

由定时器的运行机制,我们知道每间隔1000ms去改变时间的作法并不可靠。更精确地做法,应该是与系统的运行时间作为参照,倒计时的时间变化与系统的时间变化同步,达到精确倒计时的效果。

简易秒表

  秒表与倒计时的思路相同,相比而言,更加简单。每间隔100ms增加100ms即可

闹钟其实就是在时钟的基础上增加一个预定时间设置,闹钟设置需要将设置时间转换成距离1970年1月1日的毫秒数,然后再算出与当前时间的差值。随着当前时间的不断增加,当差值为0时,闹钟响起。

作为定时器来说,最麻烦的地方是定时器管理。如果,定时器只开启不关闭,则会造成定时器叠加效果,使得运行越来越快。所以,先关闭再启用定时器是一个好习惯

本文转自 wt7315 51CTO博客,原文链接:http://blog.51cto.com/wt7315/2066732