判断方法:1、使用“$.isNumeric(x)”,可判断指定参数“x”是否是数字值;2、使用“isNaN(x)”,可判断参数“x”是否是为数字值;3、使用正则表达式“/^(-)?d+(.d+)?$/”配合test来判断数字。
本教程操作环境:windows7系统、jquery3.2.1版,该方法适用于所有品牌电脑。
相关推荐:《jQuery视频》
jquery判断变量是否为数字的方法
方法1、使用$.isNumeric()
jquery里内置的一个用来判断是否为数字的函数$.isNumeric()。$.isNumeric() 函数用于判断指定参数是否是一个数字值。
用$.isNumeric()来判断是否为数字的话,一些特殊的字符会被当成8进制或12进制的数字,判定为true。
注意:在jQuery 3.0中,$.isNumeric()方法只有接收number类型的参数,或者是可以被强制为有限数值的 string类型的参数时,才会返回true,否则返回false。
语法
$.isNumeric( value )
登录后复制
参数:
value:任意类型,需要进行判断的任意值。
示例:
$.isNumeric(3.13); //true$.isNumeric("3.13"); //true$.isNumeric(-3.13); //true$.isNumeric("-3.13"); //true$.isNumeric("03.13"); //true$.isNumeric(01); //true$.isNumeric(001); //true$.isNumeric(+3.13); //true$.isNumeric(0xFF); //true$.isNumeric("0xFF"); //true$.isNumeric(true); //false$.isNumeric(NaN); //false
登录后复制
方法2:使用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
方法3:使用正则表达式判断
常用正则:
" /^(0|[1-9]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如何判断是否为数字?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2722985.html