JS判断是否为数字,是否为整数,是否为浮点数

来源:互联网 发布:软件开发简历专业技能 编辑:程序博客网 时间:2024/04/30 03:43

正则表达式方法

function checkRate(input)
{
     var re = /^[0-9]+.?[0-9]*$/;   //判断字符串是否为数字     //判断正整数 /^[1-9]+[0-9]*]*$/   
     if (!re.test(input.rate.value))
    {
        alert("请输入数字(例:0.02)");
        input.rate.focus();
        return false;
     }
}  

下面为普通函数写法

function BASEisNotNum(theNum)
{
//判断是否为数字
if (BASEtrim(theNum)=="")
return true;
for(var i=0;i<theNum.length;i++){
oneNum=theNum.substring(i,i+1);
if (oneNum<"0" || oneNum>"9")
return true;
}
return false;
}

function BASEisNotInt(theInt)
{
//判断是否为整数
theInt=BASEtrim(theInt);
if ((theInt.length>1 && theInt.substring(0,1)=="0") || BASEisNotNum(theInt)){
return true;
}
return false;
}

function BASEisNotFloat(theFloat)
{
//判断是否为浮点数
len=theFloat.length;
dotNum=0;
if (len==0)
return true;
for(var i=0;i<len;i++){
oneNum=theFloat.substring(i,i+1);
if (oneNum==".")
dotNum++;
if ( ((oneNum<"0" || oneNum>"9") && oneNum!=".") || dotNum>1)
return true;
}
if (len>1 && theFloat.substring(0,1)=="0"){
if (theFloat.substring(1,2)!=".")
return true;
}
return false;
}

常用数字验证正则表达式: 

"^//d+$"  //非负整数(正整数   +   0)    
  "^[0-9]*[1-9][0-9]*$"  //正整数    
  "^((-//d+)|(0+))$"  //非正整数(负整数   +   0)    
  "^-[0-9]*[1-9][0-9]*$"  //负整数    
  "^-?//d+$"    //整数    
  "^//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+(//.//d+)?)|(0+(//.0+)?))$"  //非正浮点数(负浮点数   +   0)    
  "^(-(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数    
  "^(-?//d+)(//.//d+)?$"  //浮点数

原创粉丝点击