// 等待timeSpan毫秒后执行resolve方法,且不会阻塞js执行线程
export async function wait(timeSpan = 600) {
return new Promise(resolve => {
setTimeout(resolve, timeSpan);
})
}
此方法接收一个等待时长参数(默认600毫秒),返回一个Promise对象,等待时长到期后将执行Promise的resolve方法。此方法是一个很好的执行流程控制工具,有点像让线程睡眠了600毫秒(Thread.sleep(600)),但其实内部的执行逻辑完全不一样。这个方法是不会阻塞Javascript执行线程的。
使用
async doSomething() {
await wait(); // 等待600s
// do something
}