async 和 await 初步小用法

2021-10-05 08:26:04 字數 893 閱讀 9324

專案中需要把ajax獲取資料的方法封裝起來,沒用await之前這樣寫的

export

function

getdatasuc

(jsondata,activeproject,km)})

.then

(res=>

) console.

log(datas)

// 1

return datas

}

發現方法返回的datas是空值,2處能輸出值,1處輸出的是空值,應該是ajax非同步獲取資料的原因,而且在控制器裡能看到,是先輸出1處的值,再輸出2處的。

用了await和async之後的**:

async

function

getdatas

(jsondata,activeproject,km)})

}export

async

function

getdatasuc

(jsondata,activeproject,km)

)return datas

}catch(e

)}

頁面獲取return值的方法:

this

.list =

await util.

getdatasuc

('/api/zhibo.json'

,activeproject,km)

這樣list就可以獲取getdatasuc()返回的值

tips:async返回的是promise物件;而await等待的就是async函式完成,但await等待的可以是promise物件或者其他任意表示式的結果

async和await的講解

普通的函式宣告 async function a 複製 宣告乙個函式表示式 let a async function 複製 async形式的箭頭函式 let a async 複製 async與await例項應用,基礎 控制器呼叫與server中查詢資料 exports.getbloglist asy...

async和await的使用

async其實是es7的才有的,是非同步操作的進化,其實就是封裝乙個promise的物件返回 async function test console.log test promiseasync方法在普通的函式前加上 async 關鍵字即可。執行這個函式,發現並沒有返回1111,而是通過promise...

async和await的講解

async和await的講解 宣告async函式的幾個方法 普通的函式宣告 async function a 宣告乙個函式表示式 let a async function async形式的箭頭函式 let a async 初識async和await async與await例項應用,基礎 控制器呼叫與...