1、首先需要理解async 和 await的基本含義
async 是乙個修飾符,async 定義的函式會預設的返回乙個promise物件resolve的值,因此對async函式可以直接進行then操作,返回的值即為then方法的傳入函式
// 0. async基礎用法測試await 也是乙個修飾符,async function fun0()
fun0().then( x => ) // 輸出結果 1, 1,
async function funa()
funa().then( x => ) // 輸出結果a, a,
async function funo() )
return {}
}funo().then( x => ) // 輸出結果 {} {}
async function funp() )
}funp().then( x => ) // 輸出promise promise
await 關鍵字 只能放在 async 函式內部, await關鍵字的作用 就是獲取 promise中返回的內容, 獲取的是promise函式中resolve或者reject的值
// 如果await 後面並不是乙個promise的返回值,則會按照同步程式返回值處理
// await 關鍵字 只能放在 async 函式內部, await關鍵字的作用 就是獲取 promise中返回的內容, 獲取的是promise函式中resolve或者reject的值// 如果await 後面並不是乙個promise的返回值,則會按照同步程式返回值處理,為undefined
const bbb = function()
async function funasy() , 3000)
})const c = await bbb()
console.log(a, b, c)
}funasy() // 執行結果是 3秒鐘之後 ,輸出 1, time , string,
// 2.如果不使用promise的方法的話2、那麼由此看來async / await的綜合用法如下function log2(time) , time)
}async function fun1()
fun1()
// 以上執行結果為: 立刻輸出undefined 立刻輸出1 2秒後輸出2000 5秒後輸出5000 10秒後輸出10000
// 1.定義乙個或多個普通函式,函式必須返回promise物件,如果返回其他型別的資料,將按照普通同步程式處理function log(time) , time)
})}async function fun()
fun()
// 3. async / await的重要應用const asy = function(x, time) , time)
})}const add = async function()
add();
// 5秒後輸出3 又10秒後輸出4 又15秒後輸出5 然後立刻輸出3,4,5,然後輸出12
JS中的async await的用法和理解
1 首先需要理解async 和 await的基本含義 async 是乙個修飾符,async 定義的函式會預設的返回乙個promise物件resolve的值,因此對async函式可以直接進行then操作,返回的值即為then方法的傳入函式 0.async基礎用法測試 async function fu...
JS中的async await的用法和理解
1 首先需要理解async 和 await的基本含義 async 是乙個修飾符,async 定義的函式會預設的返回乙個promise物件resolve的值,因此對async函式可以直接進行then操作,返回的值即為then方法的傳入函式 0.async基礎用法測試 async function fu...
JS中的async await的用法和理解
1 首先需要理解async 和 await的基本含義 async 是乙個修飾符,async 定義的函式會預設的返回乙個promise物件resolve的值,因此對async函式可以直接進行then操作,返回的值即為then方法的傳入函式 0.async基礎用法測試 async function fu...