`
zhouyrt
  • 浏览: 1125599 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaScript里模拟sleep

 
阅读更多

有几种方式,但都不完美

一、不断循环,直到达到指定时间

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

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

 

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

 

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

 

 

  • 大小: 62.9 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics