01 写一个 mySetInterVal(fn, a, b),每次间隔 a,a+b,a+2b 的时间,然后写一个 myClear,停止上面的 mySetInterVal

写一个 mySetInterVal(fn, a, b),每次间隔 a,a+b,a+2b 的时间,然后写一个 myClear,停止上面的 mySetInterVal

公司:头条 

分类:JavaScript

        var mySetInterVal = function (fn, a, b) {
            var timer = null
            var settimer = function (fn, a, b) {
                timer = setTimeout(() => {
                    console.log(a, b);
                    fn()
                    settimer(fn, a + b, b)
                }, a)
            }
            settimer(fn, a, b)
            return timer
        }

        var timer = mySetInterVal(() => { console.log('timer'); }, 1000, 2000)
        var myClrear = function (timer) {
            timer && clearTimeout(timer)
        }
虚心学习、丰富自己
原文地址:https://www.cnblogs.com/tkqq000/p/14873533.html