猿问

关于js异步的使用方法的疑问

原来是写JAVA的, 大二学生
最近在新学习nodejs, 碰到异步编程有点难理解.

现在在写一个本来在JAVA做的爬虫,获得了一个url列表后用for循环提交request爬取网页,然后经过处理后又通过for循环插入数条记录进数据库.

好像是 这个for循环是不是同步方式去理解的, 先循环完后request是异步的发出请求不会等待,然后sequelize也不会等待.

然后最后我想等全部异步处理完后log 一条信息...这两级异步操作不太知道如何处理了..

如何等待所有异步操作执行完后执行下一条命令

第一层已经解决了 在for循环内新建一个数组然后使用promiseAll
第二层是一个函数 函数内部有异步操作


第二层也解决了 方法一样

https://img.mukewang.com/5c9c8059000110e304700675.jpg

问题是 有没有更加优雅的方法 async 和await 是无法使用在这种情况吗 还是我没有想到呢

慕勒3428872
浏览 513回答 2
2回答

偶然的你

promise.all已经是最简单的方法了,其他的都要手工处理全部完成这个逻辑

猛跑小猪

这是经过最后调整的答案...但我还是想问 能不能有更加同步的写法而不用每次都用数组保存呐?
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答