pickByCallback.js 573 B

12345678910111213141516171819202122
  1. var baseForIn = require('./baseForIn');
  2. /**
  3. * A specialized version of `_.pick` which picks `object` properties `predicate`
  4. * returns truthy for.
  5. *
  6. * @private
  7. * @param {Object} object The source object.
  8. * @param {Function} predicate The function invoked per iteration.
  9. * @returns {Object} Returns the new object.
  10. */
  11. function pickByCallback(object, predicate) {
  12. var result = {};
  13. baseForIn(object, function(value, key, object) {
  14. if (predicate(value, key, object)) {
  15. result[key] = value;
  16. }
  17. });
  18. return result;
  19. }
  20. module.exports = pickByCallback;