Promise与Callback函数

Promise与callback函数处理 异步 对比

1,callback函数处理异步:代码逻辑复杂,可读性差----回调地狱;不可return; 2,promise处理异步: 对比callback,易读,可以return,不需要层层传递callback; 处理多个异步等待合并 3,async,await--ES2017 ,promise的语法糖

promise

const promise = newPromise((resolve, reject) => {
  // 三种状态
  // pending fulfilled rejected => 进行中 已成功 以失败
  // 调用resolve使状态成功,调用reject使状态失败
})

promise.then((res) => {}, (err  ) => {})

promise.all() 与 promise.race()

Promise.all([a, b ,c]).then(res=> {
    // 全部分会成功时调用
    // 只要有一个失败,就返回失败的reject,其余取消
    // res是一个数组,按照顺序分别储存a, b, c的返回结果
})
Promise.race([a, b ,c]).then(res=> {
    // 某一个成功即可调用
    // 常用于异步操作与定时器配合,制作网络超时
    // res是首个返回的结果
})

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Xcode去除警告⚠️

    程序员不务正业
  • vue加载优化(全)

    程序员不务正业
  • app框架整体设计

    程序员不务正业
  • 纸壳CMS在线编辑样式

    纸壳CMS可以在页面设计界面,可视化修改页面内的可见元素的样式,在线编辑样式。点击组件工具栏上的“自定义样式”按按钮打开样式编辑对话框:

    Mr. Wei
  • 【译】怎么写一个JavaScript Promise

    JavaScript promise是一个对象,表示异步任务完成或者失败及其结果值。

    嘉明
  • Erlang语言导文

    从业很多年,对于语言其实并没有什么偏执,工作需要什么语言就用什么语言。大家用的最多的可能是C/C++语言,毕竟是算竞的主流,也有很多同学使用Java或者pyth...

    ACM算法日常
  • 干货 | 英特尔神经网络计算棒实现对象检测加速推理

    本文小黄弟要向大家介绍的是用英特尔NCS2加速棒实现对tensorflow物体检测模型的加速,涉及到的内容有tensorflow物体检测模型,OpencvDNN...

    OpenCV学堂
  • MNE-Python专辑 | MNE-Python详细安装与使用(更新)

    1.安装Python(推荐安装Anaconda)[这里是windows系统下的安装]

    脑机接口社区
  • Java集合类之Collection接口,集合的“爸爸”接口了解一下?

    Hello!没技术的大灰狼又来了,今天和小伙伴分享一个Java项目开发中比较常用的存储数据的方法----集合。

    灰小猿
  • Java基础系列(三十九):集合之Collection

    可以看出,作为顶级的框架,Collection仅仅是继承了Iterable接口,接下来,我们来看一下Iterable的源码,看看有什么收获。

    山禾说

扫码关注云+社区

领取腾讯云代金券