Number.isNaN 和 isNaN
时间: 2023-09-02 15:07:44 浏览: 49
Number.isNaN() 是 ES6 中的一个全局函数,用于判断一个值是否为 NaN,它与全局函数 isNaN() 的不同在于,Number.isNaN() 只对 NaN 返回 true,对于其他任何值都返回 false。而全局函数 isNaN() 在判断一个值是否为 NaN 时,会先尝试将该值转换成数字,如果不能转换成数字,则返回 true,否则返回 false。
举个例子:
```javascript
Number.isNaN(NaN); // true
Number.isNaN("hello"); // false
isNaN(NaN); // true
isNaN("hello"); // true
```
所以,在判断一个值是否为 NaN 时,推荐使用 Number.isNaN()。
相关问题
isnan和number.isnan的区别
isnan是Python内置的函数,用于判断一个数是否为NaN(Not a Number),返回值为布尔值True或False。
而number.isnan是JavaScript中的方法,也用于判断一个数是否为NaN,返回值同样为布尔值True或False。
举例子介绍一下Number.isNaN
Number.isNaN() 方法用于检测一个值是否为 NaN(不是数字)。
举个例子:
```javascript
Number.isNaN(NaN); // true
Number.isNaN(5); // false
Number.isNaN('hello'); // false
Number.isNaN(undefined); // false
Number.isNaN(null); // false
```
在上面的例子中,我们可以看到,只有当传入的值是NaN时,Number.isNaN() 才会返回 true。其他情况下都会返回 false,这与全局的 isNaN() 方法不同,后者会将非数字的参数转换成数字后再进行判断。因此,使用 Number.isNaN() 更为严谨和准确。