面试题-手动实现一个定时器

211 阅读1分钟

个人写法,有见解请指正

 mySettimeout = function (fun, time) {
         let timer = null
         function interval(){
             fun()
             timer = setTimeout(interval, time)
         }
         interval()
         return {
             cancel:()=>{
                 clearTimeout(timer)
             }
         }
  };

  function a(){
      console.log(1)
  }
  mySettimeout(a,1000)