-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Description
/*
Curry
当发现正在调用同一个函数,并且传递的参数绝大多数是相同的,
那么该函数可能是用于 Curry 化的一个很好的候选参数。
可以通过将一个函数集合部分应用到函数中,从而动态创建一个新函数。
这个新函数将会保存重要的参数(因此,不必每次都传递这些参数),
并且还会使用预填充原始函数所期望的完整参数列表。
*/
function curry(fn) {
var slice = Array.prototype.slice,
store_args = slice.call(arguments, 1);
return function() {
var new_args = slice.call(arguments);
args = stored_args.concat(new_args);
return fn.apply(null, args);
};
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels