了解 setInterval 函数及其执行
setInterval 函数是一个有用的工具,用于在 JavaScript 中安排任务定期运行。但是,开发人员可能会遇到回调函数似乎只执行一次而不是连续执行的问题。
问题:回调未按预期执行
一个常见原因行为是 setInterval 函数调用的错误使用。回调应该是函数引用,而不是函数调用。
说明:函数调用与引用
在提供的示例中:
window.setInterval(timer(), 1000)
定时器函数后面少了一个括号,导致它是函数调用而不是引用。这会导致立即执行计时器函数,并随后设置执行结果的间隔,该间隔是未定义的。
解决方案:更正语法
要更正此问题发出并确保回调的连续执行,请使用函数引用,如下所示:
window.setInterval(timer, 1000);
或者,您可以使用匿名函数作为回调,它较短,但可能会降低较大函数的可读性:
window.setInterval( function() { console.log("timer!"); }, 1000)
这可确保计时器函数按指定的 1000 毫秒间隔运行。
以上是为什么我的 setInterval 函数只运行一次?的详细内容。更多信息请关注PHP中文网其他相关文章!