用setInterval 做倒计时页面,终端和服务器时间不准确怎么解决?

setInterval已知就有两个缺陷:
1)某些事件间隔会被跳过
2)多个定时器的代码执行之间的间隔可能会比预期的小。
那么,如果使用setInterval保持和服务器事件的同步呢?
或者,如果不用setInterval,有什么其他的解决方案呢?

泛舟湖上清波郎朗
浏览 1306回答 1
1回答

梵蒂冈之花

如果不需要很准确的话可以保存Date对象然后用setInterval在回调里取新的Date与保存的做比较,然后显示上去,这样setInterval只是做显示,具体的时间是通过对比电脑的时间得到的,无论setInterval中间间隔多么不准确都没关系。如果要很准确与服务器保持一致的话,可以在一个时间间隔内对服务发起一个请求做一下校正,不过要把请求的时间算上去。没有涉及到具体时间的话直接在客户端做倒计时应该还是准确的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript