20 lines
541 B
JavaScript
20 lines
541 B
JavaScript
|
var bindCallback = require('./bindCallback');
|
||
|
|
||
|
/**
|
||
|
* Creates a function for `_.forOwn` or `_.forOwnRight`.
|
||
|
*
|
||
|
* @private
|
||
|
* @param {Function} objectFunc The function to iterate over an object.
|
||
|
* @returns {Function} Returns the new each function.
|
||
|
*/
|
||
|
function createForOwn(objectFunc) {
|
||
|
return function(object, iteratee, thisArg) {
|
||
|
if (typeof iteratee != 'function' || thisArg !== undefined) {
|
||
|
iteratee = bindCallback(iteratee, thisArg, 3);
|
||
|
}
|
||
|
return objectFunc(object, iteratee);
|
||
|
};
|
||
|
}
|
||
|
|
||
|
module.exports = createForOwn;
|