setInterval改写成setTimeout

问题:setInterval 原始的用法,在调用的时候只读了一次,不便于改速度。
办法:把setInterval改写成setTimeout。给setTimeout循环的函数命名,注意fn()的作用域。

let n =1
var id = setInterval(()=>{
  n+=1
  console.log(n)
  if(n>=10){
    window.clearInterval(id)
  }
}, 500)
let n = 0
let id = setTimeout(function fn(){
  n+=1
  console.log(n)
  if(n<10) {
     id = setTimeout(fn, 500)
  }
},500)

你可能感兴趣的