代码改变世界

javascript的setTimeout超时调用

2012-10-10 10:14  yangpan  阅读(490)  评论(0编辑  收藏  举报

setTimeout(function(){},1000);
 该方法会返回一个timeId;可以用clearTimeout(timeId)销毁

setTimeout(fn(),0)

解释关于0ms的误解:如果当前时钟周期内执行队列空闲,则立即执行该定时器,将回调函数加入到事件队列;

var start=0,end=0,d=new Date(),i=0;

   var  timer=setTimeout(function(){

  end+=new Date-d;

timer=setTimeout(arguments.callee,0);

if(i++=5000){

clearTimeout(timer);

console.log(end/i);

}

d=new Date();

},0);

 

这个程序log:0.030560

说明oms也不是立刻执行的。