Promise.prototype.allSettled()

Promise.allSettled()方法返回一个在所有给定的promise已被决议或被拒绝后决议的promise,并带有一个对象数组,每个对象表示对应的promise结果。

句法

Promise.allSettled(iterable);

参数

iterable
一个 可迭代的对象,例如 Array,其中每个成员都是 Promise

返回值

一个未决议的 Promise将被异步完成一次promise 的指定集合在每一个promise 已经完成,无论是成功的达成或通过被拒绝。那时,返回的promise的处理程序作为输入传递一个数组,该数组包含原始promises集中每个promise的结果。

对于每个结果对象,都有一个status 字符串。如果状态为fulfilled,则存在一个value 。如果状态为rejected,则说明原因 。值(或原因)反映了每个promise 决议(或拒绝)的值。

标准

规格 状态 评论
Promise.allSettled() (TC39第4阶段草案) Draft

浏览器兼容

Update compatibility data on GitHub
Desktop Mobile Server
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet Node.js
allSettled() Chrome Full support 76 Edge No support No Firefox Full support 71 IE No support No Opera ? Safari ? WebView Android Full support 76 Chrome Android Full support 76 Firefox Android No support No Opera Android Full support Yes Safari iOS ? Samsung Internet Android No support No nodejs Full support 12.9.0

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown

参见