美文网首页
用setTimeout 实现一个setInterval

用setTimeout 实现一个setInterval

作者: 没头脑很不高兴 | 来源:发表于2018-02-18 22:43 被阅读0次

之所以要用 setTimeout 去做一个 setInterval,是在实现一个“调速”的功能的时候,修改setInterval的时间间隔参数的时候,并不会变更它执行的速度,是因为 setInterval 函数 在刚开始执行的时候,就已经将这个参数写进了内存,之后修改这个参数并不会影响修改内存中的参数

用setTimeout 实现的代码如下

function setItv(func, itv){
  setTimeout(function fn(){
    func()
    setTimeout(fn, itv)
  }, itv)
}

这里的 setItv 函数每次在执行的时候,都会去用内部的 setTimeout 去读外部的参数

相关文章

网友评论

      本文标题:用setTimeout 实现一个setInterval

      本文链接:https://www.haomeiwen.com/subject/suabtftx.html