asyncとawaitは理解します.
991 ワード
asyncとawait エス7の特性です.プロミスから出てきた新語法糖です. 彼は非同期操作を同期操作に変更します.コードはより優雅に見えます.
直接例を見る:
また、Generator関数(手動トリガ(next(方法)が必要です.
PS: await 後はpromiseオブジェクトと一緒にしなければならないが、async関数はpromiseオブジェクトを返します.
直接例を見る:
Title
a()
async function a() {
await b()
console.log(111);
setTimeout(async () => {
console.log('aaaa');
}, 1000)
}
function b() {
console.log('b1');
return new Promise(resolve => {
setTimeout(function () {
console.log('bbbbb');
resolve();
}, 2000)
c();
})
}
function c() {
console.log('c1');
return new Promise(resolve => setTimeout(function () {
console.log('cccc');
}, 1000))
}
多層関数がネストされている時はasync await 一番近い階の操作を待つだけです.各階の待つ必要があるなら、各階にasyncとawaitを追加してください.また、Generator関数(手動トリガ(next(方法)が必要です.
PS: await 後はpromiseオブジェクトと一緒にしなければならないが、async関数はpromiseオブジェクトを返します.