diff options
author | Alexander Early <alexander.early@gmail.com> | 2016-06-01 13:04:09 -0700 |
---|---|---|
committer | Alexander Early <alexander.early@gmail.com> | 2016-06-01 13:04:09 -0700 |
commit | 611a4424b4490592fd037279f65e22630e66ffd4 (patch) | |
tree | e4c5c886f66e6be0419e5b3cc42e49c28647127f /lib | |
parent | 5f6e76d9659c992a37b9ec488d6aff58652b918a (diff) | |
download | async-map-objects.tar.gz |
simplify index trackingmap-objects
Diffstat (limited to 'lib')
-rw-r--r-- | lib/internal/map.js | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/lib/internal/map.js b/lib/internal/map.js index b587f59..2c2a750 100644 --- a/lib/internal/map.js +++ b/lib/internal/map.js @@ -1,23 +1,16 @@ -import isArrayLike from 'lodash/isArrayLike'; -import getIterator from './getIterator'; import noop from 'lodash/noop'; -import okeys from 'lodash/keys'; -import indexOf from 'lodash/_baseIndexOf'; import once from './once'; export default function _asyncMap(eachfn, arr, iteratee, callback) { callback = once(callback || noop); arr = arr || []; var results = []; - var keys; - if (!isArrayLike(arr) && !getIterator(arr)) { - keys = okeys(arr); - } + var counter = 0; - eachfn(arr, function (value, index, callback) { + eachfn(arr, function (value, _, callback) { + var index = counter++; iteratee(value, function (err, v) { - var idx = keys ? indexOf(keys, index, 0) : index; - results[idx] = v; + results[index] = v; callback(err); }); }, function (err) { |