NPM酷库:q 增强版Promise

NPM酷库,每天两分钟,了解一个流行NPM库。

昨天我们了解了如何使用Promise管理异步任务,但是ES2015标准的Promise对象实现的接口非常有限,只包含 ,这些接口在实际使用中是不够用的,比如我们没办法直接判断一个Promise对象是否已经完成。

q

q是一个Promise实现库,并且相对于ES2015标准,q提供了很多实用的工具函数。下面我们就列举一些非常有用的函数:

判断Promise状态

promise.finally(callback)

Promise最终完成后调用,无论是否失败,注意,ES2016 标准的Promise存在此函数,但是Edge等一些浏览器并未实现此函数。

promise.timeout(ms,message)

异步处理超时设置

promise.delay(ms)

延时执行

其他关于返回值的工具函数

比如 的作用是获取Promise返回对象的某个属性,作用等同于:

这种函数有很多,具体可以查看API文档。

参考资料

https://github.com/kriskowal/q

https://github.com/kriskowal/q/wiki/API-Reference

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180128G0NRZ400?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券