Promise

Promise/A+规范

  • 一个** Promise **可能有三种状态:等待(pending)、已完成(fulfilled)、已拒绝(rejected)
  • 一个** Promise **的状态只可能从“等待”转到“完成”态或者“拒绝态”,不能逆向转换,同时“完成”态和“拒绝态”不能相互转换
  • ** Promise **必须实现then方法(可以说,then就是promise的核心),而且then必须返回一个promise,同一个promise的太then可以调用多次,并且回调的执行顺序跟它们被定义时的顺序一致
  • ** then **方法接受两个参数,第一个参数是成功时的回调,在Promise由“等待”态转换到“完成”态时调用,另一个是失败时的回调,在promise由“等待”态转换到“拒绝”态时调用。同时,then可以接受另一个promise传入,也接受一个“类then”的对象或方法,即thenable对象。

Promise的基本用法

  • Promise 对象是一个构造函数,用来生成promise实例
  • Promise.prototype.then()
    promise实例具有then方法,也就是说,** then **方法是定义在原型对象的Promise.prototype上的。它的作用是为Promise实例添加改变时的回调函数
  • Promise.resolve()
    有时需要将现有对象转为Promise对象,** promise.resolve ** 方法就起到这个作用
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容