有几种方式,但都不完美

 

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

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也可以中断后续代码的执行。

 

 

相关文章:

  • 2021-07-07
  • 2022-12-23
  • 2022-12-23
  • 2021-10-05
  • 2022-02-02
  • 2021-11-17
  • 2022-01-16
  • 2021-06-24
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-07
  • 2021-06-08
  • 2022-01-19
  • 2021-11-24
相关资源
相似解决方案