1 | var exports = module.exports;
|
2 |
|
3 | exports.series = function(fns, args, finalCallback)
|
4 | {
|
5 | var self = this;
|
6 |
|
7 | var f = function(index)
|
8 | {
|
9 | if (index === fns.length)
|
10 | {
|
11 |
|
12 | finalCallback();
|
13 | return;
|
14 | }
|
15 |
|
16 | var fn = fns[index];
|
17 |
|
18 | var localCallback = function(err)
|
19 | {
|
20 | if (err) {
|
21 | finalCallback(err);
|
22 | return;
|
23 | }
|
24 |
|
25 | f(index + 1);
|
26 | };
|
27 |
|
28 | var list = [];
|
29 | for (var z = 0; z < args.length; z++)
|
30 | {
|
31 | list.push(args[z]);
|
32 | }
|
33 | list.push(localCallback);
|
34 |
|
35 | fn.apply(self, list)
|
36 | };
|
37 |
|
38 | f(0);
|
39 | }; |
\ | No newline at end of file |