js 计时器(setTimeout,setInterval)

2018-08-04  本文已影响139人  小本YuDL

在使用过程中发现setTimeout()和setInterval()两个计时还是有区别的。来总结一下吧。今天又是新的一天,前一天睡得晚,现在有点困困的,希望学习可以拯救我这萎靡不振的心。(⊙︿⊙)
弄了一早上,我的webstorm还是离开了我。找遍全网,就是没有能激活它的地址,我好难受。真是要阻挠我学习哇,我还是接着用我的HBuilder吧。难过(ಥ﹏ಥ)。


进入正题:
1.setTimeout():有两个参数,第一个是要调用的js代码,第二个是在执行前需要等待的时间。setTimeout()只执行一次,不会重复执行,但是可以自身调用让其重复执行。
与其对应的是 clearTimeout()去结束执行 。

<body>
        <input type="text" value="0" id="time"/>
        <input type="button" value="开始计时"  onclick="timecount()" id="timesum" />
        <input type="button" value="暂停计时" onclick="timestop()" />
        <script>
            var timeCount = 0;
            function timecount(){
                document.getElementById("time").value = timeCount;
                timeCount++;
                setTimeout("timecount()",1000); //自身调用,重复执行
            }
            function timestop(){
                clearTimeout(timeCount);  //停止执行
                document.getElementById("timesum").value = "继续计时"
            }
        </script>
    </body>

2.setInterval(): 同样有两个参数,第一个是执行的js代码,第二个是执行的间隔时间。
setInterval() 方法会不停地调用函数(重复执行其内容),直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
与其对应的就是 clearInterval()结束重复执行。

<input type="text" value="0" id="time"/>
        <input type="button" value="开始计时"  onclick="setcount()" id="timesum" />
        <input type="button" value="暂停计时" onclick="setstop()" />
    
<script>
    var timecount = 0;
    function setcount(){
        document.getElementById("time").value =timecount;
        timecount++;    
    }
    var time = setInterval("setcount()", 1000);
    function setstop(){
        clearInterval(time);
    } //即使注册点击事件,也不会再继续计时了。
        
</script>

区别:

上一篇 下一篇

猜你喜欢

热点阅读