判断一个变量是不是是NaN

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断一个变量是不是是NaN相关的知识,希望对你有一定的参考价值。

参考技术A

判断一个数是否是NaN都会想到NaN===NaN 判断是否相等,可是这个方法是不行的。那为什么这个方法是不行的呢,其实从字面意思理解就ok了。NaN(not a number),意思是不是一个数字,不是一个数字和另外一个不是一个数字相比较。这个好像没法比较吧,字符串 aaaa (not a number),字符串 bbbb (not a number) 这两个字符串都是NaN,那你说它俩相不相等呢。显然是不相等的。
还有一个方法,js提供了isNaN() 的方法,判断是否是NaN,但是有一个问题,isNaN只能判断是不是NaN并不能判断这个变量是否是数字。比如:

这个效果不是我想看到的。

所以我们还是要手动处理一下,使用isNaN前面先判断一下变量是否是number类型的

这样如果变量是number类型的前提下再满足isNaN就可以了。其他的属性类型一概返回false;

以上是关于判断一个变量是不是是NaN的主要内容,如果未能解决你的问题,请参考以下文章

java中变量a是double型的。怎么判断a是不是为null?

关于Js 如何判断一个变量是Array类型?如何判断一个变量是Number类型?(都不止一种)

检查给定变量是不是为 NaN 的最佳方法是啥? [复制]

js判断变量是否为整数

浅谈NaN和undefined--------与君共勉

PHP将一个变量转换成float的几种方法