当前位置:Gxlcms > JavaScript > javascript中不提供sleep功能如何实现这个功能_javascript技巧

javascript中不提供sleep功能如何实现这个功能_javascript技巧

时间:2021-07-01 10:21:17 帮助过:14人阅读

javascript中不提供sleep功能,而我们时长会用到这个功能。

有一种思路是跑一段循环体,让程序空耗CPU的时间来实现延时。这有一个不足,不同的机器CPU的执行速度是不一样的,这很容易导致的慢的机器会SLEEP很久。

笔者从别的论坛看到一种机智的解决方法,在不同的机器上的执行速度是一致的。在此与大家共享。
代码如下:

function sleep(n)
{
var start=new Date().getTime();
while(true) if(new Date().getTime()-start>n) break;

}

当然这个方法依然是靠空转CPU的方法。

还有一个方法是使用setTimeout()函数。

函数语法如下:setTimeout(code,millisec)

使用范例:

var t=setTimeout("alert('5 seconds!')",5000)

这段代码的作用是millisec后执行代码code,范例中就是5000毫秒后执行了alert函数。也可以达到和sleep相同的效果。

人气教程排行