Create a new function based on an existing function but with some parameters pre-defined.
Syntax
// create new function based on existing one with one or more pre-defined arguments
var fNew = fExisting.uCurry(cArgs);
// use the new function, optionally specifying additional arguments
fNew(args);
Parameters / Functions
Parameter / Function
Type
Mandatory
Description
Util.js version
fExisting
Function
The original function
0.5
cArgs
One or more arguments
One or more arguments that will be passed in to fExisting when you access it via fNew
0.5
args
Additional arguments
Optionally (based on requirements of fExisting) pass in remaining arguments when calling fNew
0.5
Return value
Value
Type
Description
Util.js version
<fNew>
Function
A new function which will automatically set the cArgs arguments for fExisting and then append any additional arguments passed in to fNew.
0.5
<fExisting>
Function
If you do not specify cArgs then the existing function will be returned.
0.5
Example
Basic example - pre-defining "not" and "a" params of a "booler" function
function add(a,b) {
return a+b;
}
var Add5To = add.curry(5); // parameter "a" is pre-defined with value 5
Add5To(10); // 15 (parameter "a" already set to 5, "b" set to 10)