![[看]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_97.39cdc9f.png)
只用来验证有效数字(有理数)、排除 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
```
我为什么不使用 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
点赞