今天从网上看到一个JavaScript常用判断函数的帖子,觉得不错就摘了下来
//
****************************************************************
//
*名 称:DataLength
//
*功能:计算数据的长度
//
*入口参数:fData:需要计算的数据
//
*出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//
*****************************************************************
function
DataLength(fData)

{
varintLength=0
for(vari=0;i<fData.length;i++)

{
if((fData.charCodeAt(i)<0)||(fData.charCodeAt(i)>255))
intLength=intLength+2
else
intLength=intLength+1
}
returnintLength
}


//
****************************************************************
//
*名 称:DataLength
//
*功能:计算数据的长度
//
*入口参数:fData:需要计算的数据
//
*出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//
*****************************************************************
function
DataLength(fData)

{
varintLength=0
for(vari=0;i<fData.length;i++)

{
if((fData.charCodeAt(i)<0)||(fData.charCodeAt(i)>255))
intLength=intLength+2
else
intLength=intLength+1
}
returnintLength
}

//
****************************************************************
//
*名 称:IsEmpty
//
*功能:判断是否为空
//
*入口参数:fData:要检查的数据
//
*出口参数:True:空
//
*False:非空
//
*****************************************************************
function
IsEmpty(fData)

{
return((fData==null)||(fData.length==0))
}


//
****************************************************************
//
*名 称:IsDigit
//
*功能:判断是否为数字
//
*入口参数:fData:要检查的数据
//
*出口参数:True:是0到9的数字
//
*False:不是0到9的数字
//
*****************************************************************
function
IsDigit(fData)

{
return((fData>="0")&&(fData<="9"))
}


//
****************************************************************
//
*名 称:IsInteger
//
*功能:判断是否为正整数
//
*入口参数:fData:要检查的数据
//
*出口参数:True:是整数,或者数据是空的
//
*False:不是整数
//
*****************************************************************
function
IsInteger(fData)

{
//如果为空,返回true
if(IsEmpty(fData))
returntrue
if((isNaN(fData))||(fData.indexOf(".")!=-1)||(fData.indexOf("-")!=-1))
returnfalse

returntrue
}

//
****************************************************************
//
*名 称:IsEmail
//
*功能:判断是否为正确的Email地址
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的Email地址,或者空
//
*False:错误的Email地址
//
*****************************************************************
function
IsEmail(fData)
{
if(IsEmpty(fData))
returntrue
if(fData.indexOf("@")==-1)
returnfalse
varNameList=fData.split("@");
if(NameList.length!=2)
returnfalse
if(NameList[0].length<1)
returnfalse
if(NameList[1].indexOf(".")<=0)
returnfalse
if(fData.indexOf("@")>fData.indexOf("."))
returnfalse
if(fData.indexOf(".")==fData.length-1)
returnfalse

returntrue
}

//
****************************************************************
//
*名 称:IsPhone
//
*功能:判断是否为正确的电话号码(可以含"()"、"()"、"+"、"-"和空格)
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的电话号码,或者空
//
*False:错误的电话号码
//
*错误信息:
//
*****************************************************************
function
IsPhone(fData)

{
varstr;
varfDatastr="";
if(IsEmpty(fData))
returntrue
for(vari=0;i<fData.length;i++)

{
str=fData.substring(i,i+1);
if(str!="("&&str!=")"&&str!="("&&str!=")"&&str!="+"&&str!="-"&&str!="")
fDatastr=fDatastr+str;
}
//alert(fDatastr);
if(isNaN(fDatastr))
returnfalse
returntrue
}

//
****************************************************************
//
*名 称:IsPlusNumeric
//
*功能:判断是否为正确的正数(可以含小数部分)
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的正数,或者空
//
*False:错误的正数
//
*错误信息:
//
*****************************************************************
function
IsPlusNumeric(fData)

{
if(IsEmpty(fData))
returntrue
if((isNaN(fData))||(fData.indexOf("-")!=-1))
returnfalse
returntrue
}

//
****************************************************************
//
*名 称:IsNumeric
//
*功能:判断是否为正确的数字(可以为负数,小数)
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的数字,或者空
//
*False:错误的数字
//
*错误信息:
//
*****************************************************************
function
IsNumeric(fData)

{
if(IsEmpty(fData))
returntrue
if(isNaN(fData))
returnfalse

returntrue
}


//
****************************************************************
//
*名 称:IsIntegerInRange
//
*功能:判断一个数字是否在指定的范围内
//
*入口参数:fInput:要检查的数据
//
*fLower:检查的范围下限,如果没有下限,请用null
//
*fHigh:检查的上限,如果没有上限,请用null
//
*出口参数:True:在指定的范围内
//
*False:超出指定范围
//
*****************************************************************
function
IsIntegerInRange(fInput,fLower,fHigh)

{
if(fLower==null)
return(fInput<=fHigh)
elseif(fHigh==null)
return(fInput>=fLower)
else
return((fInput>=fLower)&&(fInput<=fHigh))
}
//
****************************************************************
//
*名 称:DataLength
//
*功能:计算数据的长度
//
*入口参数:fData:需要计算的数据
//
*出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//
*****************************************************************
function
DataLength(fData)
{
varintLength=0
for(vari=0;i<fData.length;i++)
{
if((fData.charCodeAt(i)<0)||(fData.charCodeAt(i)>255))
intLength=intLength+2
else
intLength=intLength+1
}
returnintLength
}


//
****************************************************************
//
*名 称:DataLength
//
*功能:计算数据的长度
//
*入口参数:fData:需要计算的数据
//
*出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//
*****************************************************************
function
DataLength(fData)
{
varintLength=0
for(vari=0;i<fData.length;i++)
{
if((fData.charCodeAt(i)<0)||(fData.charCodeAt(i)>255))
intLength=intLength+2
else
intLength=intLength+1
}
returnintLength
}

//
****************************************************************
//
*名 称:IsEmpty
//
*功能:判断是否为空
//
*入口参数:fData:要检查的数据
//
*出口参数:True:空
//
*False:非空
//
*****************************************************************
function
IsEmpty(fData)
{
return((fData==null)||(fData.length==0))
}


//
****************************************************************
//
*名 称:IsDigit
//
*功能:判断是否为数字
//
*入口参数:fData:要检查的数据
//
*出口参数:True:是0到9的数字
//
*False:不是0到9的数字
//
*****************************************************************
function
IsDigit(fData)
{
return((fData>="0")&&(fData<="9"))
}


//
****************************************************************
//
*名 称:IsInteger
//
*功能:判断是否为正整数
//
*入口参数:fData:要检查的数据
//
*出口参数:True:是整数,或者数据是空的
//
*False:不是整数
//
*****************************************************************
function
IsInteger(fData)
{
//如果为空,返回true
if(IsEmpty(fData))
returntrue
if((isNaN(fData))||(fData.indexOf(".")!=-1)||(fData.indexOf("-")!=-1))
returnfalse
returntrue
}

//
****************************************************************
//
*名 称:IsEmail
//
*功能:判断是否为正确的Email地址
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的Email地址,或者空
//
*False:错误的Email地址
//
*****************************************************************
function
IsEmail(fData)
{
if(IsEmpty(fData))
returntrue
if(fData.indexOf("@")==-1)
returnfalse
varNameList=fData.split("@");
if(NameList.length!=2)
returnfalse
if(NameList[0].length<1)
returnfalse
if(NameList[1].indexOf(".")<=0)
returnfalse
if(fData.indexOf("@")>fData.indexOf("."))
returnfalse
if(fData.indexOf(".")==fData.length-1)
returnfalse
returntrue
}

//
****************************************************************
//
*名 称:IsPhone
//
*功能:判断是否为正确的电话号码(可以含"()"、"()"、"+"、"-"和空格)
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的电话号码,或者空
//
*False:错误的电话号码
//
*错误信息:
//
*****************************************************************
function
IsPhone(fData)
{
varstr;
varfDatastr="";
if(IsEmpty(fData))
returntrue
for(vari=0;i<fData.length;i++)
{
str=fData.substring(i,i+1);
if(str!="("&&str!=")"&&str!="("&&str!=")"&&str!="+"&&str!="-"&&str!="")
fDatastr=fDatastr+str;
}
//alert(fDatastr);
if(isNaN(fDatastr))
returnfalse
returntrue
}

//
****************************************************************
//
*名 称:IsPlusNumeric
//
*功能:判断是否为正确的正数(可以含小数部分)
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的正数,或者空
//
*False:错误的正数
//
*错误信息:
//
*****************************************************************
function
IsPlusNumeric(fData)
{
if(IsEmpty(fData))
returntrue
if((isNaN(fData))||(fData.indexOf("-")!=-1))
returnfalse
returntrue
}

//
****************************************************************
//
*名 称:IsNumeric
//
*功能:判断是否为正确的数字(可以为负数,小数)
//
*入口参数:fData:要检查的数据
//
*出口参数:True:正确的数字,或者空
//
*False:错误的数字
//
*错误信息:
//
*****************************************************************
function
IsNumeric(fData)
{
if(IsEmpty(fData))
returntrue
if(isNaN(fData))
returnfalse
returntrue
}


//
****************************************************************
//
*名 称:IsIntegerInRange
//
*功能:判断一个数字是否在指定的范围内
//
*入口参数:fInput:要检查的数据
//
*fLower:检查的范围下限,如果没有下限,请用null
//
*fHigh:检查的上限,如果没有上限,请用null
//
*出口参数:True:在指定的范围内
//
*False:超出指定范围
//
*****************************************************************
function
IsIntegerInRange(fInput,fLower,fHigh)
{
if(fLower==null)
return(fInput<=fHigh)
elseif(fHigh==null)
return(fInput>=fLower)
else
return((fInput>=fLower)&&(fInput<=fHigh))
}
本文介绍了一系列JavaScript函数,用于判断字符串是否为空、是否为数字、是否为整数等常见验证需求。这些函数对于前端表单验证非常有用。
98

被折叠的 条评论
为什么被折叠?



