Urara-Blog/node_modules/.pnpm-store/v3/files/1c/ab42d502d395f781e6d31fc9e4e21e52dfeb6d91605dd901b236e439a636fb40563ba31fe74b23767c2da75ce543d2f597021322aab6f04349d02155fab8ef
2022-08-14 01:14:53 +08:00

27 lines
780 B
Text

var apply = require('./_apply'),
arrayMap = require('./_arrayMap'),
baseIteratee = require('./_baseIteratee'),
baseRest = require('./_baseRest'),
baseUnary = require('./_baseUnary'),
flatRest = require('./_flatRest');
/**
* Creates a function like `_.over`.
*
* @private
* @param {Function} arrayFunc The function to iterate over iteratees.
* @returns {Function} Returns the new over function.
*/
function createOver(arrayFunc) {
return flatRest(function(iteratees) {
iteratees = arrayMap(iteratees, baseUnary(baseIteratee));
return baseRest(function(args) {
var thisArg = this;
return arrayFunc(iteratees, function(iteratee) {
return apply(iteratee, thisArg, args);
});
});
});
}
module.exports = createOver;