diff options
author | Caolan McMahon <caolan@caolanmcmahon.com> | 2014-03-28 15:12:02 +0000 |
---|---|---|
committer | Caolan McMahon <caolan@caolanmcmahon.com> | 2014-03-28 15:12:20 +0000 |
commit | 9f57a352bbaba436db11f8885e460eaa81d97b75 (patch) | |
tree | 418e55d7460173fcaa9c5e6692113f09e10e2615 | |
parent | 29f97dde28f0a2572628f894863c355af9130004 (diff) | |
download | async-9f57a352bbaba436db11f8885e460eaa81d97b75.tar.gz |
use internal _isArray function
-rwxr-xr-x | lib/async.js | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/async.js b/lib/async.js index 6568025..7dfef34 100755 --- a/lib/async.js +++ b/lib/async.js @@ -27,6 +27,10 @@ //// cross-browser compatiblity functions //// + var _isArray = Array.isArray || function (obj) { + return toString.call(obj) === '[object Array]'; + }; + var _each = function (arr, iterator) { if (arr.forEach) { return arr.forEach(iterator); @@ -475,7 +479,7 @@ async.waterfall = function (tasks, callback) { callback = callback || function () {}; - if (tasks.constructor !== Array) { + if (!_isArray(tasks)) { var err = new Error('First argument to waterfall must be an array of functions'); return callback(err); } @@ -508,7 +512,7 @@ var _parallel = function(eachfn, tasks, callback) { callback = callback || function () {}; - if (tasks.constructor === Array) { + if (_isArray(tasks)) { eachfn.map(tasks, function (fn, callback) { if (fn) { fn(function (err) { @@ -548,7 +552,7 @@ async.series = function (tasks, callback) { callback = callback || function () {}; - if (tasks.constructor === Array) { + if (_isArray(tasks)) { async.mapSeries(tasks, function (fn, callback) { if (fn) { fn(function (err) { @@ -678,7 +682,7 @@ concurrency = 1; } function _insert(q, data, pos, callback) { - if(data.constructor !== Array) { + if (!_isArray(data)) { data = [data]; } if(data.length == 0) { @@ -764,7 +768,7 @@ drain: null, drained: true, push: function (data, callback) { - if(data.constructor !== Array) { + if (!_isArray(data)) { data = [data]; } _each(data, function(task) { |