只用来验证有效数字(有理数)、排除 NaN,Infinity,null,undefine 等特殊值,随手写的,不知道有没有 bug,如果大家有兴趣,请帮忙验证下

我为什么不使用 lodash 的 isNumber 工具方法?
答:因为它会认为 Infinity 是一个数值。


```js
function isNumber(num) {
if (num === '') return false;
if (num === null) return false;
if (isNaN(num)) return false;
if (num * 1 - num * 1 !== 0) return false;
return true;
}
```
Eg:

```js
isNumber('') //false
isNumber(null) //false
isNumber(Infinity) //false
isNumber(NaN)//false
isNumber('a')//false
isNumber(0)//true
isNumber(-1)//true
```
展开
9