JS 函数柯里化利用闭包和递归进行处理
function add() {
let collectArray = [...arguments]
let calc = function() {
collectArray.push(...arguments);
return calc;
};
// 利用 toString 隐式转换
calc.toString = function () {
return collectArray.reduce(function (a, b) {
return a + b;
});
};
return calc;
};
add(1)(2)(3)(4) == 10