js 指定时间点执行事件(定点定时刷新)

项目中经常有定时任务,但是不知道在某个时间点定时刷新的需求你们有没有遇到过。

现有需求如下:
需要在每日的8点、12点、17点刷新页面某个部分的数据。
我们在写代码的时候要考虑到这个时间点可以是任意时刻,只有在指定的时刻才执行指定的方法刷新数据。

代码拿走不谢,可以直接使用:






注意:

intervalFixedPointTaskFn方法的delayTime参数至少也要是1000毫秒,因为js运行机制,代码执行需要时间,很多时候代码执行时的时间戳不会刚好和设定时间点的时间戳相等,因此最好设置一个设定时间的延长时间,在设定时间到这个延长时间范围内,都算做是这个时刻,以此保证在这个时间点附近一定会执行刷新。
错误例子如下:

image.png

image.png

打印如下:
image.png

可以看到currentTimesetTime的时间戳相差76ms,不相等。

若对你有帮助,请点个赞吧,谢谢支持!
本文地址:https://www.jianshu.com/p/d658abc76325,转载请注明出处,谢谢。

你可能感兴趣的:(js 指定时间点执行事件(定点定时刷新))