为什么 javascript 说我的变量不是 NaN,而它是?
why does javascript say that my variable isn't NaN, when it is?
所以我制作了一个程序,可以根据您输入的年龄来检查您是否达到可以开车的年龄。这是代码:
const userAge = Number(prompt(`What is your age?`));
if (typeof userAge === NaN) {
console.log('Error - please reload the page and type your age. ¯\_(ツ)_/¯');
} else {
if (userAge >= 18) {
console.log('You can start driving! ');
} else {
console.log(`Sorry - you'll have to wait a bit until you can drive. `)
}
}
我试图处理有人输入一串字母而不是数字的可能性,在这种情况下,userAge
的值将是 NaN,当一些奇怪的事情出现时。
当我检查 userAge 的值是否为 NaN 时,它会 return false 即使它 是 NaN。
我梳理了代码,看看我是否犯了一个简单的错误,但我什么也没找到。非常感谢您的帮助。
你应该知道typeof NaN === 'number'
。
所以如果你想检查一个变量是否是 NaN
,使用 isNaN(variable)
function.
所以我制作了一个程序,可以根据您输入的年龄来检查您是否达到可以开车的年龄。这是代码:
const userAge = Number(prompt(`What is your age?`));
if (typeof userAge === NaN) {
console.log('Error - please reload the page and type your age. ¯\_(ツ)_/¯');
} else {
if (userAge >= 18) {
console.log('You can start driving! ');
} else {
console.log(`Sorry - you'll have to wait a bit until you can drive. `)
}
}
我试图处理有人输入一串字母而不是数字的可能性,在这种情况下,userAge
的值将是 NaN,当一些奇怪的事情出现时。
当我检查 userAge 的值是否为 NaN 时,它会 return false 即使它 是 NaN。
我梳理了代码,看看我是否犯了一个简单的错误,但我什么也没找到。非常感谢您的帮助。
你应该知道typeof NaN === 'number'
。
所以如果你想检查一个变量是否是 NaN
,使用 isNaN(variable)
function.