查看更多文章: https://alili.tech
Promise
Promise與上一章的Generator一樣,也是異步編程的一種解決方案.
在 jQuery,Angular都能找到相似的處理異步的方法.
基本使用
//首先先實(shí)例化一個Promise
var promise = new Promise(function(resolve, reject) {
//Promise會有兩個參數(shù) resolve, reject,一個代表成功,一個代表失敗
if (/* true or false */){
resolve(value); //成功,會執(zhí)行promise.then的第一個回調(diào)
} else {
reject(error); //失敗,會執(zhí)行promise.then的第二個回調(diào)
}
});
promise.then(function(value){
//當(dāng)上面函數(shù)運(yùn)行resolve()的時候,會走這里
//并且可以接收到 Promise函數(shù)里resolve傳入的參數(shù)
},function(error){
//當(dāng)上面函數(shù)運(yùn)行reject()的時候,會走這里
//并且可以接收到 Promise函數(shù)里reject傳入的參數(shù)
}).catch(function(error){
//當(dāng)then的兩個回調(diào)函數(shù)都有報(bào)錯的時候,如果加上了catch,
//可以在這里接受到報(bào)錯的對象,
//且不會導(dǎo)致代碼因?yàn)閳?bào)錯,停止執(zhí)行
})
這就是一個完整的Promise的使用方法.是不是非常的簡單?文章來源:http://www.zghlxwxcb.cn/news/detail-711188.html
公眾號“ Alili丶前端大爆炸”,關(guān)注后提供海量學(xué)習(xí)資料
文章來源地址http://www.zghlxwxcb.cn/news/detail-711188.html
到了這里,關(guān)于ECMAScript 6 之Promise的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!