jquery如何判断的是否为数字?下面本篇文章就来给大家介绍一下使用jquery判断的是否为数字的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
方法一:使用isNaN() 函数var val = $("#test").val();
var ival = parseInt(val);//如果变量val是字符类型的数则转换为int类型 如果不是则ival为NaN
alert(typeof(ival));
if(!isNaN(ival)){
alert(val +"是数字");
} else{
alert(val +"不是数字");
}
说明: isNaN()函数,如果传入的参数是数字返回false,否则返回true
方法二:使用正则表达式判断
常用正则:"^\\d+$" //非负整数(正整数 + 0)
"^[0-9]*[1-9][0-9]*$" //正整数
"^((-\\d+)|(0+))$" //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$" //负整数
"^-?\\d+$" //整数
"^\\d+(" //非负浮点数(正浮点数 + 0)
"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数
"^((-\\d+(" //非正浮点数(负浮点数 + 0)
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数
"^(-?\\d+)(" //浮点数
实例:var r = /^\+?[1-9][0-9]*$/; //判断是否为正整数
r.test(str);
或者:function isNumber(value) { //验证是否为数字
var patrn = /^(-)?\d+(\.\d+)?$/;
if (patrn.exec(value) == null || value == "") {
return false
} else {
return true
}
}
知识拓展:JavaScript的Number()函数 ----这里不是判断方法
var test1= new Boolean(true);
var test2= new Boolean(false);
var test3= new Date();
var test4= new String("999");
var test5= new String("999 888");
document.write(Number(test1)+ "
");
document.write(Number(test2)+ "
");
document.write(Number(test3)+ "
");
document.write(Number(test4)+ "
");
document.write(Number(test5)+ "
");
输出的结果是:1
0
1492855437972
999
NaN
可以看出在JavaScript中0代表false,1代表true。但是我测试了一下,除0以外的数放在if的条件中,都可以执行if语句内容。所以。可以得出除0以外的所有数都可以代表true。
更多jQuery相关技术文章,请访问 jQuery答疑 栏目进行学习!!