diff options
Diffstat (limited to 'node_modules/lodash/pickBy.js')
-rw-r--r-- | node_modules/lodash/pickBy.js | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/node_modules/lodash/pickBy.js b/node_modules/lodash/pickBy.js index 6e9e193ec..ae7c271ea 100644 --- a/node_modules/lodash/pickBy.js +++ b/node_modules/lodash/pickBy.js @@ -1,4 +1,5 @@ -var baseIteratee = require('./_baseIteratee'), +var arrayMap = require('./_arrayMap'), + baseIteratee = require('./_baseIteratee'), basePickBy = require('./_basePickBy'), getAllKeysIn = require('./_getAllKeysIn'); @@ -21,7 +22,16 @@ var baseIteratee = require('./_baseIteratee'), * // => { 'a': 1, 'c': 3 } */ function pickBy(object, predicate) { - return object == null ? {} : basePickBy(object, getAllKeysIn(object), baseIteratee(predicate)); + if (object == null) { + return {}; + } + var props = arrayMap(getAllKeysIn(object), function(prop) { + return [prop]; + }); + predicate = baseIteratee(predicate); + return basePickBy(object, props, function(value, path) { + return predicate(value, path[0]); + }); } module.exports = pickBy; |