34. 实现`Promise.any()`
分享给更多人
中等难度 -通过 / -执行
来自MDN
Promise.any() 接收一个Promise可迭代对象,只要其中的一个 promise 成功,就返回那个已经成功的 promise 。如果可迭代对象中没有一个 promise 成功(即所有的 promises 都失败/拒绝),就返回一个失败的 promise 和AggregateError类型的实例,它是 Error 的一个子类,用于把单一的错误集合在一起。本质上,这个方法和Promise.all()是相反的。
你能实现自己的Promise.any()
吗?
注意
AggregateError
暂时还没有被Chrome支持。但是你仍然可以使用它因为我们在judge你的code时候添加了AggregateError。
你可以这样:
new AggregateError( 'No Promise in Promise.any was resolved', errors)