在 JavaScript 中使用 setTimeout 时,您可能会遇到函数立即执行的问题,忽略指定的延迟。这种异常可以归因于一个常见的陷阱。
当您在 setTimeout 参数中调用该函数时,就会出现问题,如下所示:
setTimeout(testfunction(), 2000);
此语法立即调用 testfunction(),并且setTimeout 安排该函数调用的返回值在指定的延迟后执行。结果,函数立即运行,计时器变得多余。
要解决此问题,您应该将函数本身作为参数传递,而不调用它:
setTimeout(testFunction, 2000);
注意 testFunction 后面没有括号。这种方法可确保在延迟过后安排函数执行,从而使其按预期运行。
以上是为什么 `setTimeout` 立即执行我的函数?的详细内容。更多信息请关注PHP中文网其他相关文章!