可以使用 setTimeout 函数来实现隔一段时间后进行判断再继续执行。

例如,下面的代码会在 3 秒后判断变量 x 是否为 true,如果是则执行后续操作,否则继续等待:

setTimeout(function() {
  if (x === true) {
    // 执行后续操作
  } else {
    setTimeout(arguments.callee, 1000); // 继续等待 1 秒后再判断
  }
}, 3000);

在 setTimeout 中使用 arguments.callee 可以实现递归调用当前函数本身,从而实现重复检测直到条件满足的效果。需要注意的是,这种做法可能会导致死循环,因此需要在条件不满足时设定一个最大重试次数或者最大等待时间,以避免程序陷入无限等待状态。

JavaScript setTimeout 定时判断与循环执行

原文地址: https://www.cveoy.top/t/topic/n32m 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录