函数柯里化,相当于把函数的多参变成单参。
// fn(2,3,4); ===> fn(2)(3)(4);
举个栗子,给一个函数,接收a,b,c三个参数,返回乘积。一般函数写法:
function fn1(a,b,c) {
return a*b*c;
}
console.log(fn1(1,2,3)); // 6
柯里化写法:
function fn2(a) {
return function (b) {
return function (c) {
return a*b*c
}
}
}
console.log(fn2(1)(2)(3)); // 6