定义一个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);
});
}