在JS循环中使用async/await的方法
作者:mrr 时间:2024-05-02 16:19:14
async / await是ES7的重要特性之一,也是目前社区里公认的优秀异步解决方案。目前,async / await这个特性已经是stage 3的建议,可以看看TC39的进度,本篇文章将分享在JS循环中使用async/await的方法.
在开发maty.js时,遇到一个数组任务,数组项是内部异步执行的函数,期望是同步依次执行每项函数,每项函数执行完本身的异步任务后,继续下一项。
刚开始单纯使用map来循环执行,并且await每项函数。如下所示:
starters.map(async (fn, i)=> {
console.log('++++++++++: ', i)
await fn(ctx);
});
结果是依次先输出了索引i,而不是阻塞每次循环,按期望执行。
搬出Google * ,可以看出对在 for…of 循环语法中使用await是有效的。
for (const fn of starters) {
await fn(ctx);
}
同时文章中指出使用Promise.all,是无法解决当前问题的,因为all方法是并行运行的。很奇怪为什么没有串行执行的原生方法。
总结
以上所述是小编给大家介绍的在JS循环中使用async/await的方法网站的支持!
来源:http://cssor.com/javascript-loops-how-to-handle-async-await.html
标签:js,await,async
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
ASP获取ACCESS数据库的表名以及表名对应的字段名和字段类型
2009-12-25 18:57:00
python读取json数据还原表格批量转换成html
2023-11-19 05:46:20
Python常见数据结构详解
2021-10-28 22:07:33
一场关于YUI3/jQuery的精彩辩论
2010-11-11 12:50:00
Python各类图像库的图片读写方式总结(推荐)
2021-05-20 00:50:22
![](https://img.aspxhome.com/file/2023/9/85089_0s.png)
谈ASP的未来
2009-03-24 20:35:00
详解基于python的全局与局部序列比对的实现(DNA)
2021-03-29 13:23:31
![](https://img.aspxhome.com/file/2023/9/68479_0s.png)
python如何从键盘获取输入实例
2021-02-21 07:21:47
深入理解Java线程编程中的阻塞队列容器
2024-05-13 10:37:58
![](https://img.aspxhome.com/file/2023/3/125463_0s.png)
python设置表格边框的具体方法
2023-11-13 08:08:48
![](https://img.aspxhome.com/file/2023/9/107099_0s.jpg)
Python数据可视化库seaborn的使用总结
2022-08-07 11:43:04
![](https://img.aspxhome.com/file/2023/3/82633_0s.png)
HTML5 Canvas 起步(3) - 颜色与渐变
2009-06-08 12:58:00
![](https://img.aspxhome.com/file/UploadPic/20096/8/3-colors-72s.jpg)
Python中Matplotlib的点、线形状、颜色以及绘制散点图
2023-06-11 00:32:26
![](https://img.aspxhome.com/file/2023/5/78685_0s.jpg)
解决无法配置SQL2005问题
2024-01-22 15:56:51
Go slice切片使用示例详解
2023-07-09 12:07:02
![](https://img.aspxhome.com/file/2023/1/87611_0s.jpg)
浅析javascript中函数声明和函数表达式的区别
2024-05-09 10:33:14
ASP|HTML]单引与双引号
2008-03-12 11:42:00
php+js实现倒计时功能
2023-11-12 17:16:29
Python Web框架Tornado运行和部署
2021-04-14 09:17:57
使用python 进行区间取值的方法
2023-12-17 01:27:56
![](https://img.aspxhome.com/file/2023/4/70114_0s.png)