正如标题所述,追加(0);而不仅仅是();在这个代码中的目的是什么snippit(在这里找到):
function runner (fns, context, next) {
var last = fns.length - 1;
(function run(pos) {
fns[pos].call(context, function (err) {
if (err || pos === last) return next(err);
run(++pos);
});
})(0);
}
Run Code Online (Sandbox Code Playgroud)
它大致相当于:
function runner (fns, context, next) {
var last = fns.length - 1;
function run(pos) {
fns[pos].call(context, function (err) {
if (err || pos === last) return next(err);
run(++pos);
});
}
run(0);
}
Run Code Online (Sandbox Code Playgroud)
0正如传递给run()第一个值的那样pos- 与递归中的相同run(++pos);(可以更好地写为run(pos + 1)).
| 归档时间: |
|
| 查看次数: |
33 次 |
| 最近记录: |