You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							35 lines
						
					
					
						
							860 B
						
					
					
				
			
		
		
	
	
							35 lines
						
					
					
						
							860 B
						
					
					
				var baseInvoke = require('./_baseInvoke'),
 | 
						|
    baseRest = require('./_baseRest');
 | 
						|
 | 
						|
/**
 | 
						|
 * Creates a function that invokes the method at `path` of a given object.
 | 
						|
 * Any additional arguments are provided to the invoked method.
 | 
						|
 *
 | 
						|
 * @static
 | 
						|
 * @memberOf _
 | 
						|
 * @since 3.7.0
 | 
						|
 * @category Util
 | 
						|
 * @param {Array|string} path The path of the method to invoke.
 | 
						|
 * @param {...*} [args] The arguments to invoke the method with.
 | 
						|
 * @returns {Function} Returns the new invoker function.
 | 
						|
 * @example
 | 
						|
 *
 | 
						|
 * var objects = [
 | 
						|
 *   { 'a': { 'b': _.constant(2) } },
 | 
						|
 *   { 'a': { 'b': _.constant(1) } }
 | 
						|
 * ];
 | 
						|
 *
 | 
						|
 * _.map(objects, _.method('a.b'));
 | 
						|
 * // => [2, 1]
 | 
						|
 *
 | 
						|
 * _.map(objects, _.method(['a', 'b']));
 | 
						|
 * // => [2, 1]
 | 
						|
 */
 | 
						|
var method = baseRest(function(path, args) {
 | 
						|
  return function(object) {
 | 
						|
    return baseInvoke(object, path, args);
 | 
						|
  };
 | 
						|
});
 | 
						|
 | 
						|
module.exports = method;
 |