-
函数柯里化的定义
将一个含有多个参数的函数转化为一系列只有一个参数的函数
function plus(a,b,c){ // 普通函数
return a*b*c
}
function plus(a){ // 柯里化函数
return function(b){
return function(c){
return a*b*c
}
}
}
const plusWithTen = plus(10) // 形成一个可复用子函数
plusWithTen(20)(30) // 6000
-
将任何函数柯里化的函数
function curry(fn,...args){
return (..._args) => {
return fn(...args,..._args)
}
}
运用
function plus(a,b){
return a*b
}
const cPlus = curry(plus,10);
cPlus(2) // 20