1.
reduce 方法中 index,array基本不会使用,这里使用了来获取下一项,很巧妙!!
2.
Promise 捕获错误:对比then里的onRejected和 catch ,catch的优势在于可以捕获onFulfilled抛出的错!!!
3.引用
ps:所以才会有async await等更好的解决方案
使用async的好处:1.代码更加清晰;
2.以同步的方式组织代码;(后期补充)
4.
由于 foo函数里 第二个await所指向的promise 永远不会resolve 因为 在它创建之前 'myEE.emit('foo')' eventEmitter已经触发了'foo',所以foo函数 没有执行完毕 即没有返回值 导致 p2进不了then回调,无法继续执行下去