mirror of
https://github.com/nodejs/node.git
synced 2025-08-18 07:08:50 +02:00

PR-URL: https://github.com/nodejs/io.js/pull/2286 Reviewed-By: Roman Reiss <me@silverwind.io>
20 lines
587 B
JavaScript
20 lines
587 B
JavaScript
var bindCallback = require('./bindCallback'),
|
|
keysIn = require('../object/keysIn');
|
|
|
|
/**
|
|
* Creates a function for `_.forIn` or `_.forInRight`.
|
|
*
|
|
* @private
|
|
* @param {Function} objectFunc The function to iterate over an object.
|
|
* @returns {Function} Returns the new each function.
|
|
*/
|
|
function createForIn(objectFunc) {
|
|
return function(object, iteratee, thisArg) {
|
|
if (typeof iteratee != 'function' || thisArg !== undefined) {
|
|
iteratee = bindCallback(iteratee, thisArg, 3);
|
|
}
|
|
return objectFunc(object, iteratee, keysIn);
|
|
};
|
|
}
|
|
|
|
module.exports = createForIn;
|