【发布时间】:2016-07-06 23:51:55
【问题描述】:
好的,所以我已经学习了 3 个月的 Javascript,并且已经很好地接触到解决几个任务。在我的书的开头,他们有 NaN 的示例,但它们通常涉及诸如
NaN === NaN; // false
Number.NaN === NaN; // false
isNaN(NaN); // true
isNaN(Number.NaN); // true
我什至看过其他 stackoverflow 帖子,但我仍然没有看到可以在哪里使用它的场景。话虽如此,这个全局属性在什么情况下对我有帮助?实际程序中有哪些实际情况?
【问题讨论】:
-
您可以将 NaN 与 sql
null进行比较。 “未知”值,或发生错误。它是有毒的,因为它会使用 NaN 值 NaN 本身来做任何其他事情,例如var foo = 1 + NaN结果给你NaN,而不是1。一旦发生错误,您不想继续使用该错误值,因为此时您的结果变得未定义。和 sql null 完全一样,您必须使用特殊工具来检测它,例如isNaN()与sql的is null. -
var helloWorld = 'hello world'; isNaN(helloWorld - 1)简单一。 -
通常在进行任何类型的算术运算时,您使用来自未知来源(用户、数据库、api 等)的变量,这有助于检查您得到的结果是否是一个数字在进入更多需要该值的数学之前。
-
var stringInput = "blah"; var convertedToNum = Number(stringInput); alert(isNaN(convertedToNum));(警告“true”,因为“blah”无法转换为数字) -
我猜
NaN应该表明 Javascript 开发人员无法计算 :D Humor by Brendan Eich
标签: javascript nan