前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaScript 判断输入的值为数字

JavaScript 判断输入的值为数字

作者头像
Devops海洋的渔夫
发布2019-06-02 13:27:49
3.5K0
发布2019-06-02 13:27:49
举报
文章被收录于专栏:Devops专栏

仅供学习,转载请注明出处

第一种方法:isNaN()

使用js自带全局函数isNaN(), isNaN()返回一个Boolean值,如下 :

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript">
        ;(function(){
            var sTr = 'hello world';

            alert("sTr=" + isNaN(sTr));  // 字符串输出 true

            var iNum = 1;

            alert("iNum=" + isNaN(iNum));  // 数字输出false

        }())
    </script>
</head>
<body>

</body>
</html>

如果以上sTr为一个空串或是一个空格,isNaN将把c当作数字0来处理,所以检查不严谨。

第二种方法:正则表达式

代码语言:javascript
复制
function checkNum(num){

    var reg=/^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 ,判断正整数用/^[1-9]+[0-9]*]*$/

    if(!reg.test(num)){
        alert("请输入数字");
        return false;
    }else{
        alert("数字输入正确");
        return true;
    }

}

完整测试代码如下:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript">
        window.onload = function(){
            ;(function(){

                var iInput = document.getElementById('input1');
                var iBtn1 = document.getElementById('btn1');

                iBtn1.onclick = function(){

                    checkNum(input1.value);

                }

                function checkNum(num){

                    var reg=/^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 ,判断正整数用/^[1-9]+[0-9]*]*$/

                    if(!reg.test(num)){
                        alert("请输入数字");
                        return false;
                    }else{
                        alert("数字输入正确");
                        return true;
                    }

                }


            }())
        }
        
    </script>
</head>
<body>
    <input type="text" name="" id="input1">
    <input type="button" name="" value="检查是否为整数" id="btn1">
</body>
</html>

第三种方法: 利用typeof的返回值

验证方法:如果返回的值为Number,则为数字;如果返回值为String或其它,则不是数字。如下所示:

代码语言:javascript
复制
var a=123;

var b='123abc';

typeof(a) //Number

typeof(b) //String
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.03.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第二种方法:正则表达式
  • 第三种方法: 利用typeof的返回值
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档