Promise是一种异步操作的解决方案,将写法复杂的传统的回调函数和监听事件的异步操作,用同步代码的形式表达出来。避免了多级异步操作的回调函数嵌套。

1、主要用于异步计算

2、可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果

3、可以在对象之间传递和操作promise,帮助我们处理队列

Promise是一个对象,它的内部其实有三种状态。

初始状态( pending )。

已完成( resolve): resolve 方法可以使 Promise 对象的状态改变成成功

已拒绝( reject ): reject 方法则是将 Promise 对象的状态改变为失败

Promise常用的三种方法

第一种:then 表示异步成功执行后的数据状态变为resolve

第二种:catch表示异步失败后执行的数据状态变为reject

第三种:all表示把多个没有关系的Promise封装成一个Promise对象使用then返回一个数组数据。

Promise 构造函数有两个变量 resolve 用于返回异步执行成功的函数 reject 用于返回异步执行失败的函数,配合then与catch一起使用

Promise的使用:

1.Ajax异步请求的时候

2.函数嵌套层级多的时候使用promise,优点在于,回调函数变成了链式写法,程序的流程可以看得很清楚,而且有一整套的配套方法,可以实现许多强大的功能。

最新文章

  1. NodeJs 开发微信公众号(三)微信事件交互
  2. Android-Drawable、Bitmap、byte[]、资源文件相互转换
  3. GCC编译过程
  4. 骨骼动画的实现(OpenGL实现)
  5. Codeforce 546D
  6. mvc5入门示例博客(有惊喜)
  7. 在用的vim插件
  8. Keil C51软件的使用
  9. 开发者应当了解的WebKit知识
  10. IOS 怎么修改Navigation Bar上的返回按钮文本颜色,箭头颜色以及导航栏按钮的颜色
  11. HDU 2722 Here We Go(relians) Again
  12. 解决PhpCms V9后台无法上传图片
  13. 【POJ3268】Silver Cow Party 最短
  14. swift -- 构造/析构函数
  15. Confluence 6 如何备份存储文件和页面信息
  16. BZOJ3262/洛谷P3810 陌上花开 分治 三维偏序 树状数组
  17. 3、VNC
  18. 配置 -- php运行报Call to undefined function curl_init()的解决办法
  19. 第8章 传输层(2)_UDP协议
  20. Delphi下OpenGL2d绘图(06)-画图(多窗口、多视图、多个DC)

热门文章

  1. WERTYU_键盘错位(JAVA语言)
  2. PTA 统计二叉树叶子结点个数
  3. MIT 6.824拾遗(一)聊聊basic-paxos
  4. django常用模板语言
  5. 【hacker101 CTF】Photo Gallery
  6. (原创)在Linux上安装运行Python3(CentOS7为例)
  7. 启用reuse_port参数让Nginx性能提升3倍
  8. 全网最详细的Linux命令系列-cd命令
  9. 神奇的魔方阵--(MagicSquare)(1)
  10. UnitTwoSummary