async 和await 是promise还是协程函数的语法糖
时间: 2023-08-21 13:06:30 浏览: 144
JS 异步编程与Promise async await语法糖
async 和 await 是 Promise 的语法糖,而不是协程函数的语法糖。async 函数本质上是一个返回 Promise 对象的函数,其中的 await 关键字会暂停当前 async 函数的执行,等待 Promise 对象的解析完成,并返回解析后的结果。async 函数和 Promise 对象一样,都是基于回调函数实现的异步编程方式,只不过 async 函数的语法更加简洁易懂,能够更好地提高代码的可读性和可维护性。而协程函数则是一种基于生成器函数实现的异步编程方式,它的语法和 async 函数不同,使用的是 yield 关键字来暂停和恢复函数的执行。虽然协程函数和 async 函数都是用来简化异步编程的方式,但它们的实现机制和语法都有所不同。
阅读全文