为了账号安全,请及时绑定邮箱和手机立即绑定

检查变量是否为JavaScript中的数字或字符串

检查变量是否为JavaScript中的数字或字符串

qq_笑_17 2019-08-15 14:33:45
检查变量是否为JavaScript中的数字或字符串有谁知道如何在JavaScript中检查变量是数字还是字符串?
查看完整描述

3 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

最好的方法是使用isNaN +类型转换:


更新了全押方法:


function isNumber(n) { return !isNaN(parseFloat(n)) && !isNaN(n - 0) }

使用正则表达式相同:


function isNumber(n) { return /^-?[\d.]+(?:e-?\d+)?$/.test(n); } 


------------------------


isNumber ('123'); // true  

isNumber ('123abc'); // true  

isNumber (5); // true  

isNumber ('q345'); // false

isNumber(null); // false

isNumber(undefined); // false

isNumber(false); // false

isNumber('   '); // false


查看完整回答
反对 回复 2019-08-15
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

我找到的最好的方法是检查字符串上的方法,即:


if (x.substring) {

// do string thing

} else{

// do other thing

}

或者如果您想对数字属性进行数字检查,


if (x.toFixed) {

// do number thing

} else {

// do other thing

}

这有点像“鸭子打字”,这取决于你哪种方式最有意义。我没有足够的业力来评论,但是对于盒装字符串和数字,typeof失败,即:


alert(typeof new String('Hello World'));

alert(typeof new Number(5));

会警告“对象”。


查看完整回答
反对 回复 2019-08-15
  • 3 回答
  • 0 关注
  • 743 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号