js 函数内部创建的setTimeout调用自身函数

Posted 大鱼_style

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 函数内部创建的setTimeout调用自身函数相关的知识,希望对你有一定的参考价值。

js 函数内部创建的计时器setTimeout调用自身函数,实际上就变成了setInterval,操作不当的话会导致计时器不断在创建

在本函数内部清除计时器的时候带上 return ;

例如:

<script type="text/javascript">

    var t=3,timer;
    function sleep(){
        if(t<=0){
            clearTimeout(timer);
            alert("over");
            //一定要return,不然下面又创建了新的定时器
            return;
        }
        alert("hello");
        t--;
        timer = setTimeout("sleep()", 1000);
    }
    sleep();
</script>

以上是关于js 函数内部创建的setTimeout调用自身函数的主要内容,如果未能解决你的问题,请参考以下文章

js 里的 settimeout函数

js setTimeout如何调用自身所在的函数(有参数传递的)?

如果其中有 setTimeout,则不会调用 iOS 6 js 事件函数

笔记探索js 的this 对象 (第二部分)

js计时器方法的使用

js 倒计时 跳转