在JavaScript中,你可以通过创建一个返回函数的函数来实现这种链式调用的模式。这种模式通常被称为柯里化(Currying)的一种形式,尽管在这个例子中,我们并没有减少参数的数量,而是延迟了它们的处理。
javascript
function add() {
let sum = 0;
function innerAdd(num) {
sum += num;
return innerAdd;
}
innerAdd.getResult = function() {
return sum;
};
return innerAdd;
}
let result = add(1)(2)(3);
console.log(result.getResult()); // 输出 6
在这个例子中,add
函数返回了一个名为 innerAdd
的内部函数。innerAdd
函数接受一个数字参数,将其加到 sum
变量上,然后返回自己。因此,你可以连续调用 add(1)(2)(3)
,每次调用都会将新的数字添加到 sum
中。