Javascript 返回包含属性的函数中的函数
我对Javascript 返回包含属性的函数中的函数,javascript,Javascript,我对Javascript非常陌生,我正在尝试理解一段代码 代码如下所示: function abcd (x){ return function(v){ return x && v ; } } 它的名称如下: abcd(false); 在这里,编译器从哪里获得返回函数的属性v。这是一种构造函数的方法,允许部分应用函数的参数。 这是一个咖喱函数。你可以查看这个来了解更多关于咖喱的知识 依此类推abcd(假)将返回内部函数 return functi
Javascript
非常陌生,我正在尝试理解一段代码
代码如下所示:
function abcd (x){
return function(v){
return x && v ;
}
}
它的名称如下:
abcd(false);
在这里,编译器从哪里获得返回函数的属性
v
。这是一种构造函数的方法,允许部分应用函数的参数。
这是一个咖喱函数。你可以查看这个来了解更多关于咖喱的知识
依此类推abcd(假)代码>将返回内部函数
return function(v){
return x && v ;
}
但是abcd(false)(false)
将返回false
为了便于理解,您可以稍微修改上述函数
function abcd (x){
return function(v){
return x + v ;
}
}
var _a = abcd(1)(1); // will log 2
没有abcd
返回一个新函数,需要调用该函数才能使v
具有值。因为在您的示例中没有调用该函数,所以tov
甚至不存在。仅供参考,x
和v
是函数的参数,而不是属性。嗯,abcd
返回函数,因此abcd(false)
是函数 — 此函数正好接收参数v
。示例:abcd(假)(真)
返回false
。它被称为函数curry。如果函数部分执行,则返回另一个函数,以便可以像myfunction(param1)(param2)一样链接它;