js判断是否为数字 排除掉空

啦啦啦啦啦   今天写项目需要判断是否是数字再去相乘,之前的东西忘得已经差不多了,so 在度娘的一番教导下,get到了方法,赶紧给大家分享下

因为所输入的数字有可能是负数 ,小数,需要排除的是空格 和其他类型 ,所以一开始试了isNaN这个方法,如下:

console.log(isNaN(-1.22))
 false
console.log(isNaN(1))
 false
console.log(isNaN(''))
 false

NaN 即 Not a Number

如上可见,负数及正数均可判断 ,但是为空时,isNaN会解析为0处理,所以不是能够解决问题;


第二种方法:

利用parseFloat的返回值

结果如下:

console.log(parseFloat(-11.11).toString() !== 'NaN')
true
console.log(parseFloat(1).toString() !== 'NaN')
 true
console.log(parseFloat('').toString() !== 'NaN')
 false

如果是数字的话返回true,不是数字则返回false;

这个方法就可以妥妥的解决咯!


OK啦,这次分享先到这,希望可以帮助到大家


你可能感兴趣的:(js)