ES6 Promise

ES6 promise 的一些常用方法

Promise.prototype.then()

Promise.prototype.catch()

Promise.all()

Promise.race()

Promise.resolve()

Promise.reject()

Promise.try()

var getJSON=function(url){

var promise=newPromise(function(resolve,reject{

?var ? client=newXMLHttpRequest();

client.open("GET",url);

client.onreadystatechange=handler;

client.responseType="json";

client.setRequestHeader("Accept","application/json");

client.send();

function handler(){

if(this.readyState!==4)

{

return;

}

if(this.status===200{

resolve(this.response);

}else{

reject(newError(this.statusText));

}};

});

returnpromise;

};

getJSON("/posts.json").then(function(json){console.log('Contents: '+json);

},function(error){console.error('出錯了',error);

});

上面代碼中,getJSON是對XMLHttpRequest對象的封裝,用于發出一個針對JSON數據的HTTP請求,并且返回一個Promise對象。需要注意的是,在getJSON內部,resolve函數和reject函數調用時,都帶有參數。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 特點 Promise能將回調分離出來,在異步操作執行之后,用鏈式方法執行回調,雖然es5用封裝函數也能實現,但是如...
    一二三kkxx閱讀 632評論 0 1
  • //本文內容起初摘抄于 阮一峰 作者的譯文,用于記錄和學習,建議觀者移步于原文 概念: 所謂的Promise,...
    曾經過往閱讀 1,247評論 0 7
  • Promise的含義: ??Promise是異步編程的一種解決方案,比傳統的解決方案——回調函數和事件——更合理和...
    呼呼哥閱讀 2,187評論 0 16
  • 如果瀏覽已經有了Promise對象,那么頁就說明瀏覽器的js引擎里已經有了Promsise隊列,這樣就可以利用Pr...
    羊烊羴閱讀 518評論 0 0
  • 今天我說下我所理解的prosime,prosime是ES6的構造函數,里面有很多方法,我們之間打印一下promis...
    會飛的豬l閱讀 594評論 1 3