SOURCE

// 实现一个定时器函数myTimer(fn, a, b),
// 让fn执行,
// 第一次执行是a毫秒后,
// 第二次执行是a+b毫秒后,
// 第三次是a+2b毫秒,
// 第N次执行是a+Nb毫秒后
// 要求:
// 1、白板手撕
// 2、myTimer要有返回值,并且返回值是一个函数,调用该函数,可以让myTimer停掉
let myTimer = function (fn, a, b){
   let time1,time2
    time1 =  setTimeout(()=>{
        fn()
        time2 = setInterval(()=>{
            fn()
        },b)
    },a)
    return function (){
       clearTimeout(time1)
       clearInterval(time2)
    }
}
function test(){
    console.log("test")
}
let res =myTimer(test,5000,1000)
res()


console 命令行工具 X clear

                    
>
console