Skip to content

Commit de50d19

Browse files
index: Add old IE support
This patch replaces the usage of `Array#forEach` with a simple `for` loop. Browsers from the 1800s don't support much. In addition, a `test.html` file and an `assert` dep have been added for testing in the browser.
1 parent 335a5bd commit de50d19

File tree

4 files changed

+26
-8
lines changed

4 files changed

+26
-8
lines changed

component.json

+4-1
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,8 @@
77
"scripts": [
88
"index.js"
99
],
10-
"license": "MIT"
10+
"license": "MIT",
11+
"development": {
12+
"component/assert": "*"
13+
}
1114
}

index.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ module.exports = function parallel(fns, context, callback) {
1414
var finished = false
1515
var results = new Array(pending)
1616

17-
fns.forEach(context ? function (fn, i) {
17+
18+
for (var i = 0, l = fns.length; i < l; i++) {
19+
var fn = fns[i]
1820
fn.call(context, maybeDone(i))
19-
} : function (fn, i) {
20-
fn(maybeDone(i))
21-
})
21+
}
2222

2323
function maybeDone(i) {
2424
return function (err, result) {

test.html

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<!doctype html>
2+
<html>
3+
<head>
4+
<meta charset='utf8'>
5+
<title>array-parallel tests</title>
6+
</head>
7+
<body>
8+
<script src='build/build.js'></script>
9+
<script src='test.js'></script>
10+
</body>
11+
</html>

test.js

+7-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
var assert = require('assert')
2-
var parallel = require('./')
2+
try {
3+
var parallel = require('array-parallel')
4+
} catch (e) {
5+
var parallel = require('./')
6+
}
37

48
var a, b, c
59
parallel([
@@ -57,6 +61,6 @@ parallel([function (done) {
5761
done()
5862
}])
5963

60-
process.nextTick(function () {
64+
setTimeout(function () {
6165
assert.equal(f, true)
62-
})
66+
})

0 commit comments

Comments
 (0)