首页 > JavaScript > setTimeout vs setInterval
2009十二月3

setTimeout vs setInterval

Window对象的方法setTimeout()用来安排一个JavaScript代码段在将来的某个指定时间运行。运行完了也就完了。

setInterval) 同样是设定在多长时间后执行某个函数,但是执行完成过段时间人家继续执行,重复执行,反复执行,子子孙孙无穷匮也。

clearTimeout()取消setTimeout()设定的那段代码的执行

clearInterval()取消setInterval()设定的那段代码的执行,让循环停止下来


setTimeout与setInterval非常的像,用setTimeout也是可以模拟setInterval的,因为完全可以在一个函数末尾处调用setTimeout来执行该函数本身,这样就可以实现setInterval了。不过这在我看来完全是没事闲的~~

二者在网上讨论的都很多,这里不加赘述,大家可以“不知Google知”,我呢也和网上一样,给大家一个最常见的例子,在一个页面上显示时钟,当然是一秒钟一更新的,见笑~

<div id="show"></div>
    <script type="text/javascript">
    changeTime = function()
    {
        var d = new Date();
        var h = d.getHours();
        var m = d.getMinutes();
        var sec = d.getSeconds();
        var ampm = (h>=12)?"PM":"AM";
        if(h>12) h-=12;
        if(h==0) h=12;
        if(m<10) m='0'+m;
        var t = h+":"+m+":"+sec+" "+ampm;
        document.getElementById('show').innerHTML =  "Now is "+t;
    }
    changeTime();
    setInterval("changeTime()",1000);
</script>

在线时钟显示

文章作者:simaopig
本文地址:http://www.xiaoxiaozi.com/2009/12/03/1660/
版权所有 © 转载时必须以链接形式注明作者和原始出处!

4 Responses to “setTimeout vs setInterval”

  1. #1 笑话 回复 | 引用 Post:2009-12-03 22:14

    哥们做技术的啊 做个沙发吧~~

    [回复]

  2. #2 simaopig 回复 | 引用 Post:2009-12-03 22:18

    @笑话
    呵呵。嗯。搞网站开发的。呵。

    [回复]

  3. #3 LAONB 回复 | 引用 Post:2009-12-04 17:48

    对此我是不求甚解的 :shock:

    [回复]

  4. #4 beetea 回复 | 引用 Post:2009-12-10 21:46

    很多笔试题都有这两个js函数 ;-)

    [回复]

发表评论

:wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)