【发布时间】:2016-07-09 00:22:20
【问题描述】:
我想执行一个函数,其参数从一组值循环。每个执行都必须等待前一个执行完成。 下面的示例代码应该打印出来:
Done: 1
Done: 2
Done: 3
Done: 4
Done: 5
谢谢!
p.
'use strict';
function f1(value) {
return new Promise((resolve, reject) => {
setTimeout(function() {
console.log('Done: ' + value);
resolve(true)
}, Math.random() * 2000 + 1000);
});
}
const vs = [0,1,2,3,4,5];
vs.reduce((start, next) => {
return f1(next)
})
【问题讨论】:
-
我使用 angularjs 承诺做到了这一点,但是使用原生也可以做到这一点。 gist.github.com/ste2425/608b74d20504d526d2c08dd8fa76f675
标签: javascript node.js es6-promise