propertyOf.js (732B)
1 var baseGet = require('./_baseGet'); 2 3 /** 4 * The opposite of `_.property`; this method creates a function that returns 5 * the value at a given path of `object`. 6 * 7 * @static 8 * @memberOf _ 9 * @since 3.0.0 10 * @category Util 11 * @param {Object} object The object to query. 12 * @returns {Function} Returns the new accessor function. 13 * @example 14 * 15 * var array = [0, 1, 2], 16 * object = { 'a': array, 'b': array, 'c': array }; 17 * 18 * _.map(['a[2]', 'c[0]'], _.propertyOf(object)); 19 * // => [2, 0] 20 * 21 * _.map([['a', '2'], ['c', '0']], _.propertyOf(object)); 22 * // => [2, 0] 23 */ 24 function propertyOf(object) { 25 return function(path) { 26 return object == null ? undefined : baseGet(object, path); 27 }; 28 } 29 30 module.exports = propertyOf;