问答详情
源自:1-2 时间效果实现

setTimeout()与setInterval()

这里为什么要用setTimeout()而不是用setInterval();

setTimeout()不是延时器吗?只执行一次的嘛?不懂!

提问者:街角疯 2017-04-14 14:03

个回答

  • 研三学长
    2017-04-14 16:00:23
    已采纳

    setTimeout放在函数体中调用自己,就是递归,至于setInterval和setTimeout的优劣可以参考高程3的技巧一章

    某些代码不可以在没有间断的情况连续重复执行。第一次调用函数,创建一个定时器,在指定的时间间隔之后运行代码。当第二次调用该函数时,它会清除前一次的定时器并设置另一个。如果前一个定时器已经执行过了,这个操作就没有任何意义。如果前一个定时器未执行,其实就是将其替换为一个新的定时器。目的是只有在执行函数的请求停止了一段时间之后才执行。