【发布时间】:2018-06-25 15:15:41
【问题描述】:
我正在尝试编写一个返回异步承诺的函数。使用 100 毫秒的 setTimeout 来模拟承诺解析,除了 G(其中一个承诺)它的 setTimeout 是 200 毫秒。每个步骤都是单独的异步承诺。
我希望每个承诺在上一步完成后开始。 所有的 Promise 都记录他们的名字和收入参数到控制台,并提供名字作为下一个 Promise 的结果。 基本流程: a -> (b + c + d) -> e -> f -> h -> i -> j `-> g -> /
这里: (b+c+d) - 意味着 3 个 promise 应该并行运行 'i' 等待 g 和 h。 前一个任务的结果应该提供给下一个任务。
var promise = new Promise(function(resolve, reject)) {
setTimeout(resolve, 100);
});
Promise.all([promise.resolve(a), promise.resolve(b+c+d), promise.resolve(e), promise.resolve(f), promise.resolve(g)...]).then(function(values) {
console.log(values);
});
【问题讨论】:
-
请编辑您的问题以包含您的代码,以便我们了解您从什么开始以及所需的输出?
标签: javascript promise