如何使用 setInterval 和clearInterval 控制间隔
在处理键盘事件的上下文中,出现了有关正确使用 setInterval 和 setInterval 的问题clearInterval 用于管理函数的执行。让我们探讨一下这些方法之间的差异。
setInterval:设置重复计时器
setInterval 建立一个计时器,以指定的时间间隔(以毫秒为单位)重复执行函数。例如,下面的代码设置了一个计时器,每 20 毫秒调用一次 drawAll() 函数:
setInterval(drawAll, 20);
但是,如果您只想调用该函数一次,那么使用 setInterval 并不理想,因为它创建一个连续的循环。为了避免这种情况,您可以使用clearInterval。
clearInterval:取消计时器
clearInterval允许您停止循环计时器。它接受 setInterval 返回的句柄作为参数。通过将句柄设置为 0,您可以取消计时器并防止其进一步触发:
var handle = setInterval(drawAll, 20); // When you want to cancel it: clearInterval(handle); handle = 0;
使用 setTimeout 进行一次性执行
如果需要要安排函数仅执行一次,请改用 setTimeout。它提供类似的功能,但不会创建重复循环。以下代码在 20 毫秒延迟后调用一次 drawAll() 函数:
setTimeout(drawAll, 20);
请记住,setInterval 适合创建重复执行函数的计时器,而clearInterval 用于停止此类计时器。另一方面,setTimeout 用于安排函数在指定的延迟后仅触发一次。
以上是如何使用`setInterval`和`clearInterval`来控制函数执行?的详细内容。更多信息请关注PHP中文网其他相关文章!