1 var baseGet = require('./_baseGet'),
2 baseSet = require('./_baseSet'),
3 castPath = require('./_castPath');
6 * The base implementation of `_.pickBy` without support for iteratee shorthands.
9 * @param {Object} object The source object.
10 * @param {string[]} paths The property paths to pick.
11 * @param {Function} predicate The function invoked per property.
12 * @returns {Object} Returns the new object.
14 function basePickBy(object, paths, predicate) {
16 length = paths.length,
19 while (++index < length) {
20 var path = paths[index],
21 value = baseGet(object, path);
23 if (predicate(value, path)) {
24 baseSet(result, castPath(path, object), value);
30 module.exports = basePickBy;