promise.all(iterable),参数是一个数组
只有这个数组中的所有promise实例都resolve之后才会触发其返回的promise实例的then
只要其中有任何一个promise实例被reject,那么最终的promise实例将触发catch
触发then时可以只带上iterable参数中的部分值,也可以带所有值。
iterable是一个全部为promise对象的数组,只要数组中有一个promise实例被reject,那么最终的promise触发catch,只有数组中全部promise实例都resolve才会触发then,并且要带上iterable中全部promise,其中promise实例将会被结果代替
完成要返回所有,失败一个就结束。
A.参数是iterable,一个可迭代对象,如 Array 或 String。
BD. 完成(Fulfillment):完成状态的结果都是一个数组,它包含所有的传入迭代参数对象的值。
C.失败/拒绝(Rejection):传入的 promise 中有一个失败,异步回调,不管其他的。
var p1 = Promise.resolve(3); var p2 = 1337; var p3 = new Promise((resolve, reject) => { setTimeout(() => { resolve("foo"); }, 100); }); Promise.all([p1, p2, p3]).then(([v1, , v2]) => { console.log(v1, v2); // 3 "foo" });
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题