JS中怎么实现sleep(休眠)的功能

JavaScript013

JS中怎么实现sleep(休眠)的功能,第1张

使用调用自定义函数的方式消耗时间:

function sleep(numberMillis) {

var now = new Date()

var exitTime = now.getTime() + numberMillis

while (true) {

now = new Date()

if (now.getTime() >exitTime)

return

}

}

在接触到的项目中,有页面需要做倒计时的效果,原本以为很容易,做好之后就提交测试了,但是好巧不巧,测试人员手机屏幕在倒计时过程中熄灭,唤醒屏幕之后发现倒计时是接着黑屏时候的时间继续进行。

问题:手机屏幕熄灭之后,倒计时停止,手机屏幕亮起之后,倒计时接着之前的时间倒计时(即,黑屏这段时间倒计时没有减少)

解决方法:获取倒计时开始时间start_time,在调用countTime是获取一下当前时间end_time,两者的时间差即为休眠时间,使用倒计时总时间-时间差,即为新的倒计时时间

亲测有效,若有其他的好方法求告知