async/await 是什么?
async
函数,就是 Generator
函数的语法糖,它建立在Promises
上,并且与所有现有的基于Promise
的API兼容。
1、Async
— 声明一个异步函数 ( async function someName(){...}
)
- 自动将常规函数转换成
Promise
,返回值也是一个Promise
对象 - 只有
async
函数内部的异步操作执行完,才会执行then
方法指定的回调函数 - 异步函数内部可以使用
await
2、Await
— 暂停异步的功能执行 ( var result = await someAsyncCall()
) 😉
- 放置在
Promise
调用之前,await
强制其他代码等待,直到Promise
完成并返回结果 - 只能与
Promise
一起使用,不适用与回调 - 只能在
async
函数内部使用
What are the async
and await
?
The async
function, it's a syntactic sugar of Geneartor
function, it is built on Promise
, and is compatible with all existing Promise-based API.
1、The async
-- declare a async function ( async function someName(){...}
)
- Automatically convert regular functions to
Promise
, and the return value is also aPromise
object. - Only after asynchronous operation inside
async
function is executed, then execute the callback function specified bythen
method. - we can use
await
inseide asynchronous function
2、The await
-- Paused the asnychronous function execution ( var result = await someAsyncCall()
)
- Placed before the
Promise
Call, theawait
forced other codes to wait until thePromise
completes and return the result. - Can only be used with
Promise
toghter, it's not suitable for callback - Can only be used inside
async
function
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。