用代码描述如下:在这个例子中,通过 forEach 遍历地将每一个数字都执行 doMulti 操作。代码执行的结果是:首先会立即打印 start、end 。所以当前代码应该是并行执行了,而我们期望的应该是串行执行。我们尝试把 forEach 循环替换成 for 循环:执行结果完全符合了预期:依次输出:start、1, 4, 9, end 。前面用 for-of 循环来代替 forEach 作为解决方案 ,其实我们也可以改造一下 forEach :四、Eslint 问题这时候 Eslint 又报了错:no-await-in-loop 。关于这一点,Eslint 官方文档 https://eslint.org/docs/rules/no-await-in-loop 也做了说明。Eslint 推荐的 “好的写法” 在执行异步操作的时候没有顺序的,“不好的写法” 中有顺序,具体需要用哪种写法还是要根据业务需求来决定。所以,在文档的 When Not To Use It 中,Eslint 也提到,如果需要有顺序地执行,我们是可以禁止掉该规则的:
暂无评论