最近朋友问我关于倒计时的问题,我就想起来我以前写过的红包雨项目,在某一天某一点开始下红包雨,当时倒计时写的很顺利。现在细思,确实是有问题的。具体的问题,是值得记录的,供大家参考,不要走我的老路。
作为前端小白时,我们书写,倒计时是基本功,当时用的 new.Date() ,获取本地时间作为时间参考,写的没有问题。但是实际项目中,不应该使用只是用 new.Date() , 因为它获取的是电脑系统本地时间,这个时间是可以修改的,我测试过,比如设置的倒计时是到第二天凌晨开始下红包雨,而我在本地将系统时间修改问第二天凌晨,那么就会开始下红包雨。为了解决这个BUG。我们就需要后台传递给我们一个时间戳。利用时间戳,进行递减操作解决这个BUG。
//假设请求获取的两个时间戳 StartTime EndTime
var TimeDiff = EndTime - StartTime;
var timer = setInterval(function(){
TimeDiff--;
//执行页面倒计时渲染的code
},0)
这两天和同事又在讨论,关于倒计时的