js 判断是否是数字
时间: 2024-09-25 15:06:03 浏览: 32
JS 判断是否是数字
在JavaScript中,可以使用多种方式来判断一个值是否为数字。下面是一些常见的方法:
1. **`isNaN()`函数**:这是一个全局函数,用于检测指定的值是否为NaN(Not-a-Number)。如果值是数字、零或`null`,它将返回`false`;否则返回`true`。
```javascript
let num = "2211";
console.log(!isNaN(num)); // 输出 false,因为num实际上是字符串
```
2. **`typeof`操作符**:虽然`typeof NaN`会返回"number",但`typeof Number.NaN`会返回"number",所以我们可以借助这种差异来判断:
```javascript
function isNumber(value) {
return typeof value === 'number' && !isNaN(value) && !isFinite(value);
}
```
这种方法排除了Infinity和-Infinity。
3. **`Number.isNaN()`静态方法**:这是ES6引入的新特性,可以直接判断一个值是否是NaN,不需要先转换类型:
```javascript
console.log(Number.isNaN("2211")); // 输出 false,因为"2211"会被转换成数字
```
注意,以上方法可能会误判某些特殊值,如空字符串和布尔值,通常需要额外检查。
阅读全文