美文网首页
Promise学习

Promise学习

作者: cnOWgo | 来源:发表于2017-09-27 22:35 被阅读0次

我想说Promise真的是繁重

首先你要知道Promise是用来解决回调深渊的

promise.then.catch

1、catch不仅要catch主体promise,而且还会catch异步then返回的promise,就是说在catch之前的内容如果报错都会被catch捕获到

2、如果promise没有reject,也没有catch,那么最终会触发unhandledRejection事件,process.on('unhandledRejection',(err,p)=>{})

promise.all()

可将一串promise对象一并执行,准从:

1、全部标记完,则promise.all标记为reslove,进入then

2、有一个标记为reject,promise标记为reject,进入then

3、promise.all参数分先后,依次执行

4、如果内部promise有自己的catch,则不会进入最终的catch

promise.race()

promise.all()为所有promise依次执行,而race本身意为赛跑,一群promise一起,谁先执行完,以谁的结果去执行then.

这里留有问题:是否存在promise参数先后?

eg.放入两个promise,一个读取图片,另外一个5s后报错,如果5s内能读完,进入正常回调,如果,5s到了还没执行,提示太慢了,不进行回调(只是帮助理解,并不推荐实际使用)

promise.resolve()、promise.reject()

立即生成对象,并以对应的状态进行then回调

promise.done()、promise.finally()

promise链可以无限扩展,最后一环的结果存在无法catch错误,规范.done()作为结尾,无需参数,只作用于输出参数,保证error thorw

finally()接受普通函数,无论promise结果如何,都会执行

promise.try()

不是很明白= =

相关文章

  • ES6异步:Promise

    #Promise迷你书通过 ES6 Promise 和 jQuery Deferred 的异同学习 Promise

  • Node 学习(二)

    Promise学习 Promise含义 容器,保存异步操作的结果对象,获取异步操作的消息 Promise对象特点 ...

  • Promise笔记

    Promise学习(上): 资料: JavaScript Promise迷你书 原著:azu / 翻译:liubi...

  • ES9(二) —— Promise.finally

    目录 Promise是如何“兜底”操作的? 想了解全部的Promise? ES6-ES10学习版图 Promise...

  • EventLoop事件循环中的 MacroTask与 Micro

    问题来源 在学习Promise时在stackoverflow上看到一个解释Promise运行顺序回答。之前在学习异...

  • Promise

    es6中有个特别的对象Promise,今天我们就来学习它,了解它。 Promise含义 Promise 是异步编程...

  • 实现一个Promise

    实现一个Promise,来学习一下Promise的源码思想。Promise有三种状态,分别是pending,ful...

  • promise学习

    Promise定义 Promise是异步编程的一种解决方案,它有三种状态,分别是pending-进行中、resol...

  • 学习promise

    概念学习 Promise 对象用于延迟(deferred) 计算和异步(asynchronous ) 计算.。一个...

  • promise学习

    首先,我们来看一个常见的例子 我们打开控制台,会看到首先输出的是undefined,然后过了一秒钟输出’开始摇‘,...

网友评论

      本文标题:Promise学习

      本文链接:https://www.haomeiwen.com/subject/pbspextx.html