javascript里模拟sleep(两种实现方式)

有几种方式,但都不完美 其一:不断循环,直到达到指定时间、其二:用xhr同步请求后台程序,比如传2000过去,后台就sleep 2秒后再返回,这种方式也有缺点,当N多客户端都请求后台时,一直保持连接http开销很大,感兴趣的朋友可以了解下啊

有几种方式,但都不完美
其一,不断循环,直到达到指定时间

复制代码 代码如下:


function sleep(numberMillis) {
var now = new Date();
var exitTime = now.getTime() + numberMillis;
while (true) {
now = new Date();
if (now.getTime() > exitTime)
return;
}
}


其实代码并没有让脚本sleep下来, 相反让CPU迅速上到高负荷的附作用。多数现代浏览器会在该段时间内处于假死状态

javascript里模拟sleep(两种实现方式)

 
其二,用xhr同步请求后台程序,比如传2000过去,后台就sleep 2秒后再返回,这种方式也有缺点,当N多客户端都请求后台时,一直保持连接http开销很大。

此外,window对象的alert,confirm也可以中断后续代码的执行。

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjxzwx.html