我通过以下方式收到var值:
var val=document.getElementById('ctl00_ContentPlaceHoldermain_TextBox1').value;
在我的代码中,我正在使用' typeof'来检查每个角色的类型。但总是只返回字符串。如何识别号码?
答案 0 :(得分:2)
您可以使用parseInt
或parseFloat
。如果parseInt(str)
返回NaN
,那么您的字符串不是数字。
您只能用于仅包含数字的字符串:parseInt('123')
。如果你的字符串可能包含字母,那么你可能会遇到一些问题:
parseInt('123') // -> 123
parseInt('123asd') // '123asd' is not a number but parseInt returns 123
更简单的方法是使用jQuery
的{{3}}函数或自行实现
您可以通过@ Rahat评论中的链接查看更多相关内容。
您也可以在isNumeric
答案 1 :(得分:0)
我同意其他答案,但我认为parseInt
和parseFloat
应该用于解析,因为它们是针对它的。 isNaN
函数可以为您提供数字检查功能。
function isNumber(val) {
if(val == "") {
return false;
}
return !isNaN(val);
}
根据评论,如果你想从数组中选择数字,那么你可以简单地创建循环并在里面调用它。 e.g
var vals = ['dsds','2','','4'];
for (var i = 0; i<vals.length; i++) {
if(isNumber(vals[i]) {
// it's number
}
else {
// it's not number;
}
}