完美的事|

何以之

园龄:3年4个月粉丝:9关注:0

谈谈你对Promise的理解

这是一个见仁见智的问题

个人总结:

  Promise 是异步编程的一种解决方案,将异步操作以同步操作的流程表达出来,避免了回调地狱的问题。

  Promise 是一个构造函数,我们可以通过该构造函数来生成Promise的实例。

  Promise对象有以下两个特点:

    (1)对象的状态不受外界影响。Promise 即承诺,后续必要兑现,一旦兑现则不可更改!其有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。

    (2)一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise对象只有两种状态改变:从pending变为fulfilled和从pending变为rejected。只要这两种情况发生,状态就不会再变了。

  Promise也有一些缺点:

    首先,无法取消Promise,一旦新建它就会立即执行,无法中途取消。

    其次,如果不设置回调函数,Promise内部抛出的错误,不会反应到外部。

    第三,当处于pending状态时,无法得知目前进展到哪一个阶段(刚刚开始还是即将完成)。

  Promise 的实例可以看做是一个状态展示器,我们可以将拥有状态及改变状态的业务通过Promise来实现,然后再结合async function进一步提升程序的可读性及易维护性。

  Promise虽然解决了我们项目开发中的很多问题,但我们也不能无脑的滥用。比如Promise.all,如果参数中promise有一个失败(rejected),则此实例回调必然失败(reject),就不会再执行then方法的回调了。在实际中可能只是一个不关键的数据加载失败,往往会导致其他所有的数据不会显示,使得项目的容错性大大降低。所以在开发过程中只会在必须依赖这几个步骤全部加载成功后才能继续向下执行的场景中采用它,比如继某一个函数执行结果之后再进行入后续操作、图片的预加载。

 

以上综合参考了:阮一峰的《ECMAScript 6 入门》的Promise一章张培跃的《web前端面试题对答篇:谈谈你对Promise的理解》

本文作者:何以之

本文链接:https://www.cnblogs.com/serendipity-echo/p/15403954.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   何以之  阅读(553)  评论(2编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 残酷游戏 卫兰
  2. 2 明知做戏 吴雨霏
  3. 3 你,好不好? 周兴哲
  4. 4 我可以 蔡旻佑
  5. 5 云烟成雨 房东的猫
  6. 6 说散就散 JC 陈咏桐
  7. 7 我配不上你 夏天Alex
  8. 8 不再联系 夏天Alex
  9. 9 等我先说 夏天Alex
  10. 10 我知道他爱你 夏天Alex
  11. 11 多想在平庸的生活拥抱你 隔壁老樊
  12. 12 这一生关于你的风景 隔壁老樊
  13. 13 我曾 隔壁老樊
  14. 14 关于孤独我想说的话 隔壁老樊
  15. 15 过客 周思涵
  16. 16 备爱 周思涵
  17. 17 嚣张 en
  18. 18 海口 后弦
明知做戏 - 吴雨霏
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 夏至(蔡冕丽)

作曲 : 方文良

编曲 : 吴国恩

等你的汽水喝一半给你加片薄冰

等你的桌面满泄我总会打理重整

不想纯情

不够聪明

你未发现我的身影

得我帮你依照编码整理家里电影

只会得我一个帮你选购喜爱铃声

天天如常

估你心情

等一个眼神求证

一闪擦过如流星

怎么我为我做过的感到惊怕

就像爱吗我也不肯定恐怕

我以为存在吗

千变万化

从来不肯开口可相信吗

离谱吗

请你不要阻我喜欢你

明明是爱但你未说话你扮作闪避

这个沉默冷静的你亳无办法处理

其实我亦怕是错摸心理

总有天会等到好天气

游行示爱大叫着你在某大遍草地

等你无用退避不过仍然害羞的你

还是顾忌太不争气

明知做戏

即使你未太在意不感到惊讶

现在要说爱你请准备招架

勇气还存在吗

不要害怕

随时真的胆敢亲手送花

离谱吗

请你不要阻我喜欢你

明明是爱但你未说话你扮作闪避

这个沉默冷静的你亳无办法处理

其实我亦怕是错摸心理

总有天会等到好天气

游行示爱大叫着你在某大遍草地

等你无用退避不过仍然害羞的你

还是顾忌太不争气

明知做戏

不过不要阻我紧张你

如何令你愉快让我办妥为你准备

喜爱沉默冷静的你还是自信的你

仍愿意为你造一些惊喜

总有天会等到好天气

游行示爱大叫着你在某大遍草地

等你无用退避不过途人目光不理

期待贴着你的手臂

无须做戏

等你喜爱等你不爱就凭摘毫验证

想爱不爱偏爱不理亦同样难划清

天天如常

估你心情

不想扑索来求证

争取过趁还年青

终于你下决定来答应

太动听