下面的代码片段设置了一个超时时间,我希望至少等待一秒钟:
var currentTimeMillis = new Date().getTime();
// do stuff...
var sleepTime = 1000 - (new Date().getTime() - currentTimeMillis);
考虑到 sleepTime
可能是负数,像这样调用 setTimeout
是安全的吗:
setTimeout(callback, sleepTime)
我需要在调用setTimeout
之前检查负值吗?
setTimeout
,IE 8 的实现确实不会执行你的函数。至少现在 IE 8 已经太古老了,大多数人可以安全地忽略它。 - Mark Amery