交流,学习,进步!

千里之行始于足下……
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

js中setTimeout与setInterval的区别

Posted on 2008-02-22 14:25  xixi8820  阅读(2317)  评论(0编辑  收藏  举报
很多人都觉得这两个方法差不多,但是,实际上,他们差的很远呢
因为setTimeout(表达式,延时时间)在执行时,是在载入后延迟指定时间后,去执行一次表达式,记住,次数是一次
而setInterval(表达式,交互时间)则不一样,它从载入后,每隔指定的时间就执行一次表达式
所以,完全是不一样的 。使用setInterval与clearInterval的一段代码:
 1 var begin = setInterval("RefreshPromptList()",20000);
 2 
 3 function StopPopup()
 4 {
 5     clearInterval(begin);
 6     popupWindow.close();
 7 }
 8 
 9 
10 function RefreshPromptList()
11 {
12     popupWindow.show();
13     GetPromptList();
14 }


很多人习惯于将setTimeout包含于被执行函数中,然后在函数外再次使用setTimeout来达到定时执行的目的
这样,函数外的setTimeout在执行函数时再次触发setTimeout从而形成周而复始的定时效果