async同步异步操作注意
- wait用户同步异步操作,但不可以再wait处理的异步操作中直接return返回参数,因为这里return终止的是异步操作
- wait关键字只能用于一层嵌套的异步操作,多层可以使用考虑promise同步,或者通过调用再次调用async同步的函数实现
promise同步异步操作注意
- 无论是promise的回调还是promise.all的回调,都属于异步操作,比如下列测试代码:
new Promise((resolve)=>{
setTimeout(function(){
resolve(3);
},2000)
}).then((data)=>{
console.log(data);
})
console.log(1);
所以对于异步操作结果的处理,应该全部放在.then的回调函数中
参考网址
【ES6 async 同步异步操作 - 简书】 https://www.jianshu.com/p/06fb1add7d9f
【Promise 对象 - 简书】 https://www.jianshu.com/p/113aee11dfb9
【Promise - JavaScript | MDN】 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise
【(8条消息)NodeJs+mongoose实现搜索功能 - weixin_40679158的博客 - CSDN博客】 https://blog.csdn.net/weixin_40679158/article/details/100212953