JS 判断是否纯数字
时间: 2024-12-02 15:22:31 浏览: 18
在JavaScript中,判断一个值是否为纯数字(整数或小数)可以使用多种方法,这里有几个常用的技巧:
1. **isNaN()函数**:这是最直接的方法,但需要注意的是,`isNaN()`会尝试将非数字转换成数字,所以如果值能被转换成数字,它将返回false。正确的用法是结合`typeof`检查,例如:
```javascript
function isNumeric(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
```
2. **正则表达式**:你可以使用正则表达式匹配只包含数字字符的字符串:
```javascript
const regex = /^\d+(\.\d+)?$; // 匹配整数和小数
function isNumeric(n) {
return regex.test(String(n));
}
```
3. **typeof运算符** 和 `Number.isInteger()` 或 `Number.parseFloat()` 函数:
```javascript
function isNumeric(n) {
return typeof n === 'number' && Number.isInteger(n); // 只检查整数
}
```
或者
```javascript
function isNumeric(n) {
return typeof n === 'number' && !isFinite(n); // 检查非整数的小数
}
```
注意,以上方法都假设输入是一个基本类型的数值,如果是复杂的数据结构(如对象、数组等),需要进一步处理。
阅读全文