es7 async/await使用

先建立一個promise對象,裏面執行一個異步函數git

function fetchUser() {
return new Promise((resolve, reject) => {
fetch('https://api.github.com/users/superman66')
.then((data) => {
resolve(data.json());
}, (error) => {
reject(error);
})
});
}github

使用async調用promise對象json

async function getUserByAsync(){
let user = await fetchUser();
return user;
}api

async 函數返回一個 Promise 對象,因此能夠用.then方法,async 函數內部 return 返回的值。會成爲 then 方法回調函數的參數。
getUserByAsync()
.then(v => console.log(v));promise

注意事項:異步

async 函數返回的 Promise 對象,必須等到內部全部的 await 命令的 Promise 對象執行完,纔會發生狀態改變async

正常狀況下,await 命令後面跟着的是 Promise ,若是不是的話,也會被轉換成一個 當即 resolve 的 Promise函數

相關文章
相關標籤/搜索