如何设置Promise等待的最长执行时间?

function doSomething(maxExecutionTime) {
return new Promise(resolve => {
setTimeout(() => resolve(true), 2000); // this setTimeout simulates your async action which sould not exced maxExecutionTime
setTimeout(() => resolve(false), maxExecutionTime);
});
}

async function someFunc(maxExecutionTime) {
var exced = await doSomething(maxExecutionTime);
if (exced) {
console.log(“Doesn’t exced max time”);
} else {
console.log(“Exced max time”);
}
}

someFunc(1000);
someFunc(3000);

上一篇:宏任务和微任务


下一篇:数字累加