You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用jQuery每隔X秒执行函数直到其返回true?

解决方案:定时执行函数直到返回true停止

没问题,这个需求很常见,咱们用JavaScript的setInterval和clearInterval就能轻松实现,完全适配你的jQuery函数场景。

具体实现思路

  1. 先给你的匿名函数起个名字(方便后续调用),比如checkTargetCondition
  2. 用setInterval创建定时任务,每隔X秒执行一次这个函数
  3. 每次执行后检查返回值:如果是true,立刻用clearInterval终止定时任务

完整代码示例

// 给你的原函数添加名称,方便调用
function checkTargetCondition() {
    // do something
    if (certain conditions) {
        return true;
    } else {
        return false;
    }
}

// 设置定时任务:这里以3秒为间隔(你可以把3000改成需要的毫秒数,1秒=1000毫秒)
const intervalTaskId = setInterval(() => {
    const checkResult = checkTargetCondition();
    if (checkResult) {
        // 条件满足,停止定时任务
        clearInterval(intervalTaskId);
        console.log("检测到目标条件,已停止定时检查");
    }
}, 3000);

关键细节说明

  • setInterval会返回一个唯一的任务ID(上面的intervalTaskId),这是终止定时任务的核心标识,一定要妥善保存
  • 如果你需要调整执行间隔,直接修改最后那个毫秒数值即可,比如要每隔5秒执行就写5000
  • 如果你的函数包含异步操作(比如AJAX请求),那同步判断的方式就不适用了,需要改成在异步回调里检查结果并终止定时器——不过看你描述函数运行正常且能返回布尔值,应该是同步逻辑,上面的代码完全够用

内容的提问来源于stack exchange,提问作者Matt Ross

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:31:07