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阅读 636评论 0 1
  • //本文内容起初摘抄于 阮一峰 作者的译文,用于记录和学习,建议观者移步于原文 概念: 所谓的Promise,...
    曾经过往阅读 1,256评论 0 7
  • Promise的含义:   Promise是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和...
    呼呼哥阅读 2,199评论 0 16
  • 如果浏览已经有了Promise对象,那么页就说明浏览器的js引擎里已经有了Promsise队列,这样就可以利用Pr...
    羊烊羴阅读 525评论 0 0
  • 今天我说下我所理解的prosime,prosime是ES6的构造函数,里面有很多方法,我们之间打印一下promis...
    会飞的猪l阅读 600评论 1 3