首页 >web前端 >js教程 >为什么 `setInterval` 只运行我的回调一次?

为什么 `setInterval` 只运行我的回调一次?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-29 02:02:14372浏览

Why Does `setInterval` Only Run My Callback Once?

为什么 setInterval 回调只执行一次?

考虑以下问题:您正在尝试使用计数器创建无限循环使用setInterval。然而,回调函数只执行一次。可能出了什么问题?

提供的代码是:

function timer() {
  console.log("timer!")
}

window.setInterval(timer(), 1000)

错误源于使用函数调用而不是函数引用作为 setInterval 的第一个参数。

正确用法:

要解决此问题,您需要传递函数引用本身,像这样:

function timer() {
  console.log("timer!");
}

window.setInterval(timer, 1000);

或者,您也可以使用以下较短的语法:

window.setInterval( function() {
  console.log("timer!");
}, 1000)

以上是为什么 `setInterval` 只运行我的回调一次?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn