Skip to content

Latest commit

 

History

History
30 lines (24 loc) · 588 Bytes

sleep.md

File metadata and controls

30 lines (24 loc) · 588 Bytes

sleep延迟执行

描述

定义一个sleep(func, delay)函数,延迟delay毫秒后执行func函数。如:

(async () => {
  await sleep(() => {
    console.log('1秒后执行'); // 1秒后打印:1秒后执行
  }, 1000);
  await sleep(() => {
    console.log('再过一秒后执行'); // 2秒后打印:再过一秒后执行
  }, 1000);
})();

实现

思路:Promise + setTimeout封装。

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