Skip to content

Commit b18be09

Browse files
authored
Merge pull request #140 from jacereda/faster-apply
Preallocate resulting array
2 parents 3d4380c + 9f147d5 commit b18be09

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/Control/Apply.js

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22

33
exports.arrayApply = function (fs) {
44
return function (xs) {
5-
var result = [];
5+
var l = fs.length;
6+
var k = xs.length;
7+
var result = new Array(l*k);
68
var n = 0;
7-
for (var i = 0, l = fs.length; i < l; i++) {
8-
for (var j = 0, k = xs.length; j < k; j++) {
9-
result[n++] = fs[i](xs[j]);
9+
for (var i = 0; i < l; i++) {
10+
var f = fs[i];
11+
for (var j = 0; j < k; j++) {
12+
result[n++] = f(xs[j]);
1013
}
1114
}
1215
return result;

0 commit comments

Comments
 (0)