Bootstrap

几种检验数字的方法区别 isNaN、isFinite

  1. isNaN():

首先认识NaN   , NaN是IEEE 754定义的一个特殊数值。它不表示一个数字。尽管下面的表达式返回的是true

typeof NaN ==='number' ;//返回true

NaN产生的情况有两种:

1、在对非数字进行数字转换的时候。比如:parseInt('runningSnail'); 返回NaN

2、在做数学元算的时候,有参与计算的元素为NaN或者计算结果是非数字,那么结果都会为NaN

而判断是否为NaN ,不能简单的使用==或者===。因为这样返回的都是false。例如:

<span style="font-size:14px;">var a = parseInt("runningSnail");
  alert(a==NaN); //false
  alert(a===NaN); //false</span>
;