Javascript:使用带有循环的 Async/Await
下面的演示程序向您展示了如何在现代 Javascript 中使用带有 for循环的 async/await语法:****
// kindacode.com
// create a promise that resolves after 1 second
const delayedFunction = (i) => {
return new Promise((resolve) => {
setTimeout(() => resolve(`Task ${i} finished`), 1000);
});
};
// loop through an array with async/await
const run = async () => {
const arr = [1, 2, 3, 4, 5];
for (let e of arr) {
console.log(`Task ${e} started`);
console.log(await delayedFunction(e));
}
console.log('All tasks done!');
};
// run the program
run();
运行这个程序,你会看到任务一个接一个地依次执行,每个任务的开始和结束的时间间隔是1秒:
Task 1 started
Task 1 finished
Task 2 started
Task 2 finished
Task 3 started
Task 3 finished
Task 4 started
Task 4 finished
Task 5 started
Task 5 finished
All tasks done!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。