初识promise(二)promise基本使用


theme: fancy

highlight: atelier-forest-dark

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

promise API

  • 什么是API?
    • 百度百科定义:API 应用程序接口是一些预先定义的接口(如函数、HTTP接口)
    • 简约定义: 这里的API是指函数的方法
  • 浅谈部分API? 分别有什么作用

```js /* Promise构造函数: Promise(excutor) {} excutor函数: 同步执行 (resolve, reject)=>{} resolve函数: 成功时调用的函数 value=>{} rejected函数: 失败时调用的函数 reason=>{} 注: excutor会在promise内部立即同步回调,异步操作在执行器中执行

Promise.prototype.then方法: (onResolved,onRejected)=>{}
   onResolved函数: 成功的回调函数 (value)=>{}
   onRejected函数:  失败的回调函数 (reason)=>{}
   注:用于得到成功value的成功回调或者失败reason的失败回调
   返回一定是一个新promise对象

Promise.prototype.catch方法: (onRejected)=>{}
   onRejected函数:失败的回调函数 (reason)=>{}
   注: then()的语法糖 相当于then(undefined, onRejected)

Promise.resolve方法: (value)=>{}
    value: 成功的数据或promise对象
    注: 返回成功或失败的promise对象

Promise.reject方法: (reason)=>{}
    reason: 失败的原因
    注: 返回一个失败的promise对象

Promise.all方法: (promises)=>{}
    promises: 包含n个promise的数组
    注: 返回一个新的promise,只有所有promise都成功才成功,否则失败

Promise.race方法: (promises)=>{}
    promises: 包含n个promise的数组
    注:返回一个promise,第一个完成的promise结果就是最终的结果状态

*/ ```

API的使用示例

js new Promise((resolve, reject)=>{ setTimeout(()=>{ // 两个函数只能运行一个 promise状态只能改变一次 resolve('成功') // reject('失败') },1000) }).then( //链式调用 调用函数onResolved value=>{ console.log('onResolved()',value) } ).catch( // 捕获错误 调用函数onRejected reason=>{ console.log('onRejected()',reason) } )

Promise 语法糖

```js // 产生一个成功值为1的promise对象 初始写法 const p1 = new Promise((resolve,reject)=>{ resolve(1) }) p1.then(value=>{console.log(value)})

// 语法糖写法 const p2 = Promise.resolve(1) p2.then(value=>{console.log(value)})

// 产生一个是失败值为1的promise对象 const p3 = Promise.reject(1) // 失败时有两种获取值的方法 p3.then((null,reason)=>{console.log(reason)}) p3.catch(reason=>{console.log(reason)}) ```

总结

  • 今日枯燥知识点较多,需要慢慢消化,剩下的API下期再更
  • 可关注专栏 promise持续更新中。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值