这可以用 javascript 实现吗?使用相同的函数并一次又一次地调用它。
myFunc("test")("me")("please")()
编辑
感谢您的回答。如果可能的话,我想保留将字符串附加到前一个字符串的内部变量。
最佳答案
function MyFunc(arg){
console.log(arg);
return MyFunc;
}
MyFunc("a")("b")("c");
Y-combinator示例:
function Y(f) {
var g = f(function() {
return g.apply(this, arguments);
});
return g;
}
var MyFunc = Y(function(f) {
var a = "";
return function(n) {
a = a + n;
console.log(a);
return f;
};
});
//alert(a); // throws error as a is outside of scope here
MyFunc("a")("b")("c"); # logs a; ab; abc
关于javascript - 链式调用同一个函数并修改一个内部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22963471/