Added the underscore node_module.
All checks were successful
Auto Maintenance Cycle / pre-commit Autoupdate (push) Successful in 39s
All checks were successful
Auto Maintenance Cycle / pre-commit Autoupdate (push) Successful in 39s
This commit is contained in:
33
node_modules/underscore/amd/restArguments.js
generated
vendored
Normal file
33
node_modules/underscore/amd/restArguments.js
generated
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
define(function () {
|
||||
|
||||
// Some functions take a variable number of arguments, or a few expected
|
||||
// arguments at the beginning and then a variable number of values to operate
|
||||
// on. This helper accumulates all remaining arguments past the function’s
|
||||
// argument length (or an explicit `startIndex`), into an array that becomes
|
||||
// the last argument. Similar to ES6’s "rest parameter".
|
||||
function restArguments(func, startIndex) {
|
||||
startIndex = startIndex == null ? func.length - 1 : +startIndex;
|
||||
return function() {
|
||||
var length = Math.max(arguments.length - startIndex, 0),
|
||||
rest = Array(length),
|
||||
index = 0;
|
||||
for (; index < length; index++) {
|
||||
rest[index] = arguments[index + startIndex];
|
||||
}
|
||||
switch (startIndex) {
|
||||
case 0: return func.call(this, rest);
|
||||
case 1: return func.call(this, arguments[0], rest);
|
||||
case 2: return func.call(this, arguments[0], arguments[1], rest);
|
||||
}
|
||||
var args = Array(startIndex + 1);
|
||||
for (index = 0; index < startIndex; index++) {
|
||||
args[index] = arguments[index];
|
||||
}
|
||||
args[startIndex] = rest;
|
||||
return func.apply(this, args);
|
||||
};
|
||||
}
|
||||
|
||||
return restArguments;
|
||||
|
||||
});
|
Reference in New Issue
Block a user