add(1)(2),add(1,2)(3)随意长度组合的完美解决
知识点:柯里化,toString
function add () {
let args=[...arguments]
function sum() {
args.push(...arguments);
return sum;
}
sum.toString = function() {
return args.reduce((prev, val) => {
return prev + val
});
}
return sum; // 返回一个函数
}
找了别人各种解决方案都没我这个方案完美,欢迎指正。
觉得赞同的来个赞,觉得有问题的欢迎评论区见!