gpt4 book ai didi

javascript - 递归 setInterval() 连续运行

转载 作者:数据小太阳 更新时间:2023-10-29 04:23:32 25 4
gpt4 key购买 nike

我正在尝试使用递归 setInterval 函数使用 JavaScript 每 5 秒运行一次函数。

以下代码只是尽可能快地记录“已启动”,然后使浏览器崩溃。为什么这不是每 5 秒运行一次?

function five() {
console.log("five");
setInterval(five(), 5000);
}
five();

最佳答案

不要以这种方式使用 setInterval。使用设置超时。通过调用 setInterval,您可以在每次调用该函数时创建一个 UNIQUE 计时器。 SetTimeout 将创建一个结束的计时器,然后创建一个新的计时器。

您还应该更改引用5 的方式。 five() 立即执行函数。只有 5 传递了一个函数引用,所以按照下面的方式进行。

function five() {
console.log("five");
setTimeout(five, 5000);
}
five();

当然,您始终可以将函数调用作为要计算的字符串传递:

    setTimeout("five()", 5000); // note the quotes

但这通常被认为是不好的做法。

关于javascript - 递归 setInterval() 连续运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18687795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com