JavaScript如何判断一个值是否是数字?

第一种方法:isNaN()

使用js自带全局函数isNaN(), isNaN()返回一个Boolean值,以下 :正则表达式

var c="hello"; //字符串函数

isNaN(c); //返回一个true;字符串

var c=10; //数字get

isNaN(c);//返回一个falseinput

若是以上c为一个空串或是一个空格,isNaN将把c看成数字0来处理,因此检查不严谨。io

第二种方法:正则表达式

function checkNum(input){function

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

var num=document.getElementById(input).value;方法

if(!reg.test(num)){字符

        alert("请输入数字");

    document.getElementById(input).value="";

    return false;

    }

}

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

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

var a=123;

var b='123abc';

typeof(a) //Number

typeof(b) //String