<分区>
我正在学习 JavaScript,我最近遇到了一个 practice problem这要求我构建一个可以创建如下输出的函数:
var threeSum= sum(3);
threeSum //3
threeSum(4) //7
threeSum(4)(3) //10
threeSum(4)(3)(7) //17
threeSum(4)(3)(7)()(2) //19
threeSum - 2 //1
threeSum + 2 //5
我假设涉及柯里化(Currying),并且我认为我基本了解柯里化(Currying)如何以简单的形式工作
a=>b=>c=> a+b+c
但我不知道如何创建一个能够处理不确定数量的输入的柯里化(Currying)函数,也不知道如何使它产生一个既可以作为值又可以作为函数的变量。
感谢任何见解!我只需要朝着正确的方向插入——在这一点上,我什至不知道我在寻找什么。