async await 失效
时间: 2023-09-20 13:03:51 浏览: 50
在使用forEach循环中,async和await可能会失效的原因是因为await后面需要跟着一个Promise对象,而不是一个普通函数。 在你提供的例子中,如果A和B函数不返回一个Promise对象,那么await将不会生效。为了解决这个问题,你可以使用for循环或者Promise.all()方法来确保async和await的正常工作。
第一种解决方法是使用for循环来代替forEach循环。你可以在for循环中使用await关键字来等待每个请求的完成,并确保它们按照预期的顺序执行。
第二种解决方法是使用Promise.all()方法。你可以将所有的请求封装在Promise.all()中,它会返回一个包含所有请求结果的Promise对象。这样,你可以使用await关键字等待所有请求的完成,并且可以在结果返回后进行处理。
综上所述,你可以使用for循环或者Promise.all()方法来解决async和await失效的问题,确保你的请求按照预期的顺序执行并获得正确的结果。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [map/forEach循环里async、await为什么会失效](https://blog.csdn.net/qq_51075439/article/details/128149124)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [async await 中的await无效](https://blog.csdn.net/wqgdfkafj/article/details/131762547)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]