ES6 promise理解
參考大佬文章對promise的理解,請點選這裡
promise就是為了解決多層函式或者方法的巢狀而存在的。
簡單粗暴的理解一下:
promise它就是把一層一層向內巢狀呼叫的方法,給拉成一串連續呼叫的方法,每個巢狀呼叫的方法,都會對呼叫者返回this,也就是返回自身,也就是帶著上一次呼叫的結果,進入下一次巢狀呼叫的環節。
舉個簡單粗暴的例子:
普通js的寫法
function xx (){
function aa (){
function bb(){
.....
一層一層的巢狀的呼叫下去,非常的繁瑣
}
}
}
promsie的實現思路
var abc = new promsie()
abc.xx()
abc先呼叫xx()方法,帶著執行的結果 返回this
abc.xx().aa() 再呼叫aa
abc再呼叫上一次的結果呼叫bb()方法
promise的寫法就是這樣的
abc.xx().aa().bb()
promise 連續呼叫上一次的結果用的方法是.then()
也就是
abc.then().then().then()......then()不斷向下
在es6當中 promise正式成為的原生的東西,
Promise 物件用於一個非同步操作的最終完成(或失敗)及其結果值的表示。簡單點說,它就是用於處理非同步操作的,非同步處理成功了就執行成功的操作,非同步處理失敗了就捕獲錯誤或者停止後續操作。
一般形式展示為:
new Promise(
/* executor */
function(resolve, reject) {
if (/* success */) {
// ...執行程式碼
resolve();
} else { /* fail */
// ...執行程式碼
reject();
}
}
);
相關文章
- ES6 Promise理解Promise
- 深入理解 ES6 PromisePromise
- ES6 Promise的使用和理解Promise
- JS每日一題: 如何理解es6中的Promise?JS每日一題Promise
- ES6 - PromisePromise
- Promise ES6Promise
- es6—PromisePromise
- ES6——Promise 物件Promise物件
- ES6 Promise物件Promise物件
- 深入理解 JavaScript 非同步系列(3)—— ES6 中的 PromiseJavaScript非同步Promise
- 你是怎麼理解ES6中 Promise的?使用場景?Promise
- jquery Promise和ES6 Promise的區別jQueryPromise
- Es6 Promise 實現Promise
- ES6之promise原理Promise
- ES6中的PromisePromise
- ES6的Promise物件Promise物件
- ES6 Promise介紹Promise
- 《深入理解ES6》筆記—— Promise與非同步程式設計(11)筆記Promise非同步程式設計
- ES6語法——Promise物件Promise物件
- ES6 Promise 執行解析Promise
- ES6 Promise用法小結Promise
- ES6 Promise 用法講解Promise
- ES6中的Promise物件Promise物件
- 實操ES6之PromisePromise
- 淺談ES6原生PromisePromise
- 關於ES6的PromisePromise
- ES6的promise物件研究Promise物件
- 簡單理解promisePromise
- Promise原理解析Promise
- Promise原理解讀Promise
- Promise實用理解Promise
- 用ES6實現符合promise/A+規範的PromisePromise
- ES6的Promise物件的使用Promise物件
- [ ES6 ] 進階篇(一) —— PromisePromise
- es6 快速入門 系列 —— promisePromise
- ES6中Promise用法詳解Promise
- ES6 Promise 及實現原理Promise
- es6中的promise解讀Promise