isnan和number.isnan的区别
时间: 2023-04-21 14:03:13 浏览: 183
isnan是Python内置的函数,用于判断一个数是否为NaN(Not a Number),返回值为布尔值True或False。
而number.isnan是JavaScript中的方法,也用于判断一个数是否为NaN,返回值同样为布尔值True或False。
相关问题
isNaN 和 Number.isNaN 函数的区别?
isNaN 是全局函数,用于检查传入的参数是否为 NaN。如果参数不是 NaN,它会尝试将参数转换为数字类型,如果无法转换为数字,则返回 true,否则返回 false。这意味着 isNaN 可能会产生误导性的结果,例如对于非数字类型的字符串和布尔值,它也会返回 true。
而 Number.isNaN 是 Number 对象的静态方法,只有在传入的参数是真正的 NaN 时才会返回 true,否则返回 false。它不会尝试将参数转换为数字类型,也不会返回误导性的结果。因此,如果你想检查一个值是否真正的 NaN,最好使用 Number.isNaN。
Number.isNaN 和 isNaN
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()。
阅读全文