ES 6のPromise説明async/awaitの使用
1261 ワード
1.promiseはコールバック関数に代わるソリューションです.従来のコールバックの必要性は,多層があればネストして使用する必要があるがpromiseはこの状況を変え,従来のネストから通常の順序実行方式になり,次の実行をコールバック関数の内部に書く必要がない.promiseでよく使われます.reject resloveはthenの後のcatchについてrejectまたはresloveが実行されると、後のpromise状態は変わりません.コードは次のとおりです.
2.async/awaitシンタックスはasyncによって非同期関数として指定することができ、非同期関数を実行してからawaitを使用することができる.awaitの役割は、thenメソッドの代わりにresolveの値を直接返すことで、より便利に使用できます.
//例async function demo(){var result=await test()//ここでは戻り値return resultを直接受信できます//demo関数を呼び出す場合もawaitを使用してresultという戻り値を受信する必要があります.}
注意:returnがawaitの値を持つ場合、受信した関数も銅ドラムawaitで受信する必要があります.そうしないと、受信したデータは失敗します.
function test(){
//promise , 。
// ,reslove ,reject
var promise = new Promise(function(reslove,reject){
reslove(true);
});
return promise;
}
//
test().then(function(value){
// value reslove
retrun new Promise(function(reslove,reject){
//
if(value){
reslove(" ");
}else{
reject(" ");
}
});
}).catch(function(val){
//
}).then(function(value){
//
});
2.async/awaitシンタックスはasyncによって非同期関数として指定することができ、非同期関数を実行してからawaitを使用することができる.awaitの役割は、thenメソッドの代わりにresolveの値を直接返すことで、より便利に使用できます.
//例async function demo(){var result=await test()//ここでは戻り値return resultを直接受信できます//demo関数を呼び出す場合もawaitを使用してresultという戻り値を受信する必要があります.}
注意:returnがawaitの値を持つ場合、受信した関数も銅ドラムawaitで受信する必要があります.そうしないと、受信したデータは失敗します.