jquery如何判断是否为数字?


本文摘自PHP中文网,作者青灯夜游,侵删。

判断方法: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。

语法

1

$.isNumeric( value )

参数:

value:任意类型,需要进行判断的任意值。

示例:

1

2

3

4

5

6

7

8

9

10

11

12

$.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() 函数

1

2

3

4

5

6

7

8

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:使用正则表达式判断

常用正则:

1

2

3

4

5

6

7

8

9

10

  " /^(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+)("         //浮点数

实例:

1

2

var r = /^\+?[1-9][0-9]*$/;  //判断是否为正整数

r.test(str);

或者:

1

2

3

4

5

6

7

8

function isNumber(value) {         //验证是否为数字

    var patrn = /^(-)?\d+(\.\d+)?$/;

    if (patrn.exec(value) == null || value == "") {

        return false

    } else {

        return true

    }

}

知识拓展:JavaScript的Number()函数 ―-这里不是判断方法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<script type="text/javascript">

  

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)+ "<br />");

document.write(Number(test2)+ "<br />");

document.write(Number(test3)+ "<br />");

document.write(Number(test4)+ "<br />");

document.write(Number(test5)+ "<br />");

</script>

输出的结果是:

1

2

3

4

5

1

0

1492855437972

999

NaN

可以看出在JavaScript中0代表false,1代表true。但是我测试了一下,除0以外的数放在if的条件中,都可以执行if语句内容。所以。可以得出除0以外的所有数都可以代表true。

更多编程相关知识,请访问:编程课程!!

以上就是jquery如何判断是否为数字?的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

如何解决jQuery ajax乱码问题

jQuery 如何判断 是否相等

jQuery实现div显示、隐藏和文字填充

jQuery怎么获取星期几

jQuery如何验证元素是否为空

jQuery怎么获取div的高度

jQuery怎么判断input是否为空

jQuery中hasclass()的意思及用法详解

jQuery css怎么设置高度

jQuery miniui是什么?

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...