在 JavaScript 中,为什么isNaN(" ")评估为false,但isNaN(" x")评估为true?
isNaN(" ")
false
isNaN(" x")
true
我将在文本输入字段上执行数字运算,并检查该字段是null、""还是NaN。当有人在该字段中键入少量空格时,我的三个验证都失败了,我很困惑为什么它会通过isNaN检查。
null
""
NaN
isNaN
JavaScript 将空字符串解释为 0,然后 isNAN 测试失败。您可以首先在字符串上使用 parseInt,它不会将空字符串转换为 0。结果应该会失败 isNAN。