随着es6、es7逐渐步入大家的视野,相信大家都遇到过promise和async吧。
在刚开始的时候比较习惯用promise,可能思维方式的问题吧。
就像这样
let promise = new Promise(function(resolve, reject) {
// ... some code
if (/* 异步操作成功 */){
resolve(value);
} else {
reject(error);
})
promise.then() // 继续处理
这样做单层的promise没有什么问题,但是万一继续处理的流程中,还有Promise对象就会比较麻烦,
结合async就会使这样的问题变得比较简单
async function demo() {
let suc = await promise;
}
就可以利用suc获取值,当然我认为两者都能实现需要,要结合具体的场景使用