我尝试在JavaScript中创建一个函数,告诉一个数字是否是偶数,或者它是否是一个数字。我收到此错误:
这是CodeCademy的一课。
答案 0 :(得分:1)
您正在检查功能isNaN
是否存在,而不是NaN
类似isNaN(number)
。
虽然包含内容的字符串是真实的,但任何数字的结果都是正确的。
答案 1 :(得分:0)
isNaN是一个函数,所以你的else if(isNaN)应该总是为真,因为isNaN是一个有效的函数。尝试else if (isNaN(number))
,你应该在尝试模数之前检查isNaN,因为如果输入一个字符串,当你试图获取字符串的模块时,它会立即出错。
答案 2 :(得分:0)
您正在返回一个字符串。
else if(isNan){
return "Whatever";
}
你只是告诉javascript评估“isNan”,作为一个值,而不是一个函数。要将其评估为函数,您必须使用它来执行调用,如下所示:
else if(isNan(yourNumber)){
return true;
}
顺便说一下,当你尝试将函数计算为像你一样的值时,如果该函数未定义或为null,则javascript将始终返回true。
答案 3 :(得分:0)
这是因为
else if(isNaN)
将true
并返回"This is not a number"
,此字符串将被视为true。在这里,您正在检查isNaN
是否定义为函数,这是一个函数,因此您应该检查数字的有效数字。
相反,你应该做
else if(isNaN(number))