【问题标题】:Index in Promise.all [duplicate]Promise.all 中的索引 [重复]
【发布时间】:2019-06-01 19:17:40
【问题描述】:

Promise.all 方法没有针对特定承诺的索引,所以在我的情况下,我想知道我是否可以这样做:

let promises = [Promise.resolve(true), 
                Promise.resolve(true), 
                Promise.resolve(false), 
                Promise.resolve(true)];

Promise.all(promises).then(result => {
    console.log(result);
    // [true, true, false, true]

    let failed = result.findIndex(r => !r);
    console.log(promises[failed]);

});

现在假设顺序始终保持不变,即结果数组始终与输入数组的顺序相同?

【问题讨论】:

  • 是的,订单将保持与您执行承诺的顺序相同

标签: javascript promise


【解决方案1】:

使用 Promise.all 时,返回的数组将始终与提供的数组的顺序相同,因此您可以安全地使用设置索引。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2019-12-21
  • 1970-01-01
  • 2021-03-17
  • 1970-01-01
  • 2018-04-27
  • 2017-07-01
  • 2016-02-11
  • 2021-11-02
相关资源
最近更新 更多