《深入理解ES6》——Promise异步编程

本文深入探讨了Promise的生命周期,包括从pending到settled的转变,以及fulfilled和rejected两种已处理状态。重点介绍了then()方法,它是Promise的核心,用于处理异步操作的结果。then()方法可以接受两个回调函数,分别对应Promise成功和失败的情况。通过实例展示了then()方法的多种使用方式,以及catch()方法作为处理错误的便捷方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Promise的生命周期

    每个promise都会经历一个短暂的生命周期:先是处于进行中(pending)的状态,此时操作尚未完成,所以它也是未处理(unsettled)的;一旦异步操作执行结束,Promise则变为已处理(settled)的状态。已处理的状态又分为以下两种:

  • Fulfilled  Promise异步操作成功完成
  • Rejected   由于程序错误或其他一些原因,Promise异步操作未能成功完成。

then()方法

    所有Promise都有then()方法,它接受两个参数第一个当Promise的状态变为fulfilled时要调用的函数,与异步操作相关的附加数据都会传递给这个完成函数;第二个当Promise的状态变为rejected时要调用的函数,其与完成时调用的函数类似,所有与失败状态相关的附加数据都会传递给这个拒绝函数。

    then()的两个参数都是可选的,可以按照任意组合的方式来监听Promise,执行完成或被拒绝都会被响应。来看下面实例:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值