【发布时间】:2019-04-07 23:46:24
【问题描述】:
async/await 和使用.then、.finally 和.catch 的更标准的promise 表示法之间有什么区别
例如
functionThatReturnsPromise(someVar).then((returnedValueFromPromise) => {
console.log(returnedValueFromPromise)
})
对
async functionThatReturnsPromise(someVar) {
await returnedValueFromPromise
}
我不确定 Promise 链接是否只是旧的表示法,它已被更新的 async/await 取代。两者还有用例吗?什么是更好的做法?
【问题讨论】:
-
async await 在语法上只是 promise 的糖,它使代码看起来更具可读性,尤其是当您有嵌套的 pomise 时,请从类似的问题中查看这个不错的 answer
-
比较你的例子是没有意义的。一个定义
functionTahtReturnsPromise,另一个调用它并使用promise? -
回答问题标题“Async/Await vs new Promise(resolve,reject)”:
async/awaitcannot replacenew Promise -
Async/Await 不只是一个在底层使用 Promises(和生成器?)以提高可读性的 API 吗?
标签: javascript promise