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

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相同的效果。