ES6 Promise

文章目录

    promise 的意义

    解决了之前不断嵌套异步回调的问题。

    可以以同步的语法,来执行异步的操作。

    参数 resolve 与 reject 是用来做什么的

    以封装微信小程序的 wx.request 来统一处理错误码为例。

    promise 对象必须使用 resolve 和 reject 做为返回么

    then 必须使用两个回调函数作为参数么?

    我看还有使用一个参数的情况。

    原来,第二个参数是可选的,即不处理 reject 的情况。

    then 的 catch 与第二个回调函数同时存在时会用哪个

    • then的第二个参数和catch方法都存在的情况下,只有then的第二个参数能捕获到;
    • 如果then的第二个参数不存在,则catch方法会捕获到。
      promise.then(res => { // }, err => { console.log(err); }).catch(err1 => { console.log(err1); });

    哪个更好一些,我觉得用 catch 来处理更合适

    • 代码可读性更高一些
    • 逻辑越简单越好

    参考

    • https://es6.ruanyifeng.com/#docs/promise#Promise-race
    • http://www.kancloud.cn:8080/xiaoyulive/wechat/526990

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式