promise 的理解

promise 是什么

Promise 是 JS 中解决异步编程的一种方案。


简单的说,语法上Promise 是一个构造函数;功能上promise 对象用来封装一个异步操作并可以获取其结果

propimse状态

promise有三种状态:分别是 pending(进行中)、resolved(成功)、rejected(失败)

promise的状态改变只有2种, 只能改变一次

        pending变为resolved

        pending变为rejected

为什么用promise

  1. 指定回调函数的方式更加灵活: 可以在请求发出甚至结束后指定回调函数
  2. 支持链式调用, 可以解决回调地狱问题

 怎样使用promise


Promise构造函数: Promise (excutor) {}

(1) excutor 函数: 执行器 (resolve,reject)=>{}
(2) resolve 函数: 内部定义成功时我们调用的函数 value=>{}
(3) reject 函数: 内部定义失败时我们调用的函数 reason=>{}
说明:excutor 会在 Promise 内部立即同步回调,异步操作在执行器中执

Promise.resolve方法: (value) => {}

(1) value: 成功的数据或 promise 对象
说明: 返回一个成功/失败的 promise 对象

Promise.reject方法: (reason) => {}

(1) reason: 失败的原因
说明: 返回一个失败的 promise 对象

Promise.all方法: (promises) => {}

(1) promises: 包含 n 个 promise 的数组
说明: 返回一个新的 promise, 只有所有的promise 都成功才成功, 只要有一个失败了就
直接失败

Promise.race方法: (promises) => {}

(1) promises: 包含 n 个 promise 的数组
说明: 返回一个新的 promise, 第一个完成的 promise 的结果状态就是最终的结果状态

总结:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值