我是JavaScript新手。我无法理解如何在返回函数语句中将'5'或'A'分配给函数参数i
。
function negate (f) {
return function (i) {
return !f(i);
};
}
var isNumber = negate(isNaN);
// function object alert(isNumber(5));
// => true alert(isNumber(NaN));
// => false alert(isNumber("A"));
// => false
答案 0 :(得分:1)
调用negate(isNaN)
函数时,isNumber
将该函数作为返回值:
var isNumber = function (i) {
return !isNaN(i)
};
此后,当像isNumber
或isNumber(5)
那样调用isNumber('A')
时,会将它们分配给参数i
。