使用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 +"不是数字");
    }
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

说明: isNaN()函数,如果传入的参数是数字返回false,否则返回true

方法二:使用正则表达式判断

常用正则:
 " /^(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
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
实例:

  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
    }
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

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

<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
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

输出的结果是: 


1492855437972 
999 
NaN

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

本文参考了一下链接: 
http://www.cnblogs.com/-walker/p/5933458.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106303.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 级联分类器原理(级联器是什么)

    级联分类器即为Emgucv中的CascadeClassifier。使用CascadeClassifier来加载一个.xml分类器文件,然后使用DetectMultiScale函数来对图片进行检测。这是DetectMultiScale函数。publicRectangle[]DetectMultiScale(IInputArrayimage,doublescaleFactor=1.

    2022年4月10日
    280
  • mysql分页查询实例_mysql分页查询实例讲解「建议收藏」

    LIMIT子句可以被用于强制SELECT语句返回指定的记录数。LIMIT接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是0(而不是1)。下面,我们针对特例对mysql分页查询进行总结。mysql提供分页的功能:SELECT*FROMtableLIMIT[offset…

    2022年4月11日
    43
  • 手眼标定算法Tsai-Lenz代码实现(Python、C++、Matlab)

    手眼标定算法Tsai-Lenz代码实现(Python、C++、Matlab)上一节介绍了手眼标定算法Tsai的原理,这一节介绍算法的代码实现,分别有Python、C++、Matlab版本的算法实现方式。该算法适用于将相机装在手抓上和将相机装在外部两种情况论文已经传到git上,地址:https://gitee.com/ohhuo/handeye-tsai如果你要进行手眼标定,可以参考我的其他文章:手眼标定-基础使用手眼标定-JAKA机械臂手眼标定-AUBO机械臂手眼标定-Aruco使用与相机标定手眼标定-注意事项Python版本使用前需要安装库:pip3

    2022年5月20日
    39
  • ▲ 实现一个简单的快递时间轴效果

    ▲ 实现一个简单的快递时间轴效果

    2021年3月12日
    154
  • (一)什么是流程引擎?为什么学习流程引擎?

    activity(流程引擎)从零入门到实战学习欢迎使用Markdown编辑器1.什么是流程引擎?2.为什么需要学习流程引擎?3.为什么选择activiti?功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编

    2022年4月5日
    242
  • Snort安装_snorer

    Snort安装_snorer1、下载源文件wgethttps://www.snort.org/downloads/snort/daq-2.0.6.tar.gzwgethttps://www.snort.org/downloads/snort/snort-2.9.8.0.tar.gz2、解压安装tarxvfzdaq-2.0.6.tar.gzcddaq-2.0.6./configure;mak

    2022年10月24日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号