Javascript 这个条件在吴国会得到满足吗?
下面是函数。我只是不知道三元运算的“else”是怎么执行的,但是如果我遗漏了什么,我想知道Javascript 这个条件在吴国会得到满足吗?,javascript,function,functional-programming,currying,Javascript,Function,Functional Programming,Currying,下面是函数。我只是不知道三元运算的“else”是怎么执行的,但是如果我遗漏了什么,我想知道 wu.autoCurry = function (fn, numArgs) { numArgs = numArgs || fn.length; return function () { if (arguments.length < numArgs) { return numArgs - arguments.length > 0 ?
wu.autoCurry = function (fn, numArgs) {
numArgs = numArgs || fn.length;
return function () {
if (arguments.length < numArgs) {
return numArgs - arguments.length > 0 ?
wu.autoCurry(wu.curry.apply(this, [fn].concat(toArray(arguments))),
numArgs - arguments.length) :
// in what situation would this line below run?
wu.curry.apply(this, [fn].concat(toArray(arguments)));
}
else {
return fn.apply(this, arguments);
}
};
};
实际上,它永远不会运行,因为
numArgs-arguments.length>0
相当于numArgs>arguments.length
相当于arguments.length
这是外部if
语句的条件。无论如何,我投票以主要基于意见的方式结束这个问题,因为任何人(除了编写代码的人)都不可能诚实地知道他/她为什么要写它。@AaditMShah我也投票结束它。我只是问,因为我认为这可能对其他人有用,也希望知道我是否遗漏了什么。
wu.curry = function (fn /* variadic number of args */) {
var args = ARR_SLICE.call(arguments, 1);
return function () {
return fn.apply(this, args.concat(toArray(arguments)));
};
};