如何让定时器能定时改变自身的时间间隔?


需求:

设置一个计时器,它的时间是可以变化的,如下(a是可以变化的):

var a = 100;

var timer = setInterval(function() {

                a += 1000;
                console.log(a);
            }, a);
如果像上面这样写的,看上去是可以实现的,但是不能达到我们需要的效果,原因就是定时器在生成的那一刻,属性已经确定了,不能再改变,除非我们重新生成一个新的定时器;

方法如下:

var a = 100;
        
        (function resetTimer() {
            var timer = setInterval(function() {
                a += 1000;
                console.log(a);
                resetTimer();
                clearInterval(timer);
            }, a);
        })();

调用自身函数,这样就能实现以上需求。

关注微信公众号

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com