22 lines
		
	
	
		
			736 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			22 lines
		
	
	
		
			736 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | var baseForOwn = require('./_baseForOwn'); | ||
|  | 
 | ||
|  | /** | ||
|  |  * The base implementation of `_.invert` and `_.invertBy` which inverts | ||
|  |  * `object` with values transformed by `iteratee` and set by `setter`. | ||
|  |  * | ||
|  |  * @private | ||
|  |  * @param {Object} object The object to iterate over. | ||
|  |  * @param {Function} setter The function to set `accumulator` values. | ||
|  |  * @param {Function} iteratee The iteratee to transform values. | ||
|  |  * @param {Object} accumulator The initial inverted object. | ||
|  |  * @returns {Function} Returns `accumulator`. | ||
|  |  */ | ||
|  | function baseInverter(object, setter, iteratee, accumulator) { | ||
|  |   baseForOwn(object, function(value, key, object) { | ||
|  |     setter(accumulator, iteratee(value), key, object); | ||
|  |   }); | ||
|  |   return accumulator; | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = baseInverter; |