如何在javascript中实现拦截代码的休眠功能[duplicate]

41ik7eoe  于 2023-03-06  发布在  Java
关注(0)|答案(2)|浏览(98)
    • 此问题在此处已有答案**:

(91个答案)
昨天关门了。
我想实现一个sleep函数,其功能如下所示:

console.log(123)
slepp(2000)
console.log(456)

运行它:

123
waiting two seconds...
456

我想得到一个关于sleep函数实现的解决方案

92dk7w1h

92dk7w1h1#

前几天我自己做了一个项目。

function sleep(delay) {
  return new Promise((resolve) => {
    setTimeout(() => {
      resolve();
    }, delay);
  });
}

您可以通过以下方式使用:await sleep(2000),持续2秒延迟。

f2uvfpb9

f2uvfpb92#

下面是我几乎在每个项目中添加的函数:

/**
 * Async function to sleep for `ms` amound of milliseconds.
 * @param ms - time to sleep in milliseconds
 * @returns `Promise<void>` after the sleep time has passed.
 */
export async function sleep(ms: number): Promise<void> {
  return new Promise((resolve) => {
    setTimeout(() => {
      resolve();
    }, ms);
  });
}

编辑:看起来@John Detlefs比我早了2分钟,当问题已经开放时没有注意到:)

相关问题