這篇文章主要介紹了JavaScript判斷字符長(zhǎng)度、數(shù)字、Email、電話等常用判斷函數(shù)分享,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下
- /****************************************************************
- //* 名 稱:DataLength
- //* 功 能:計(jì)算數(shù)據(jù)的長(zhǎng)度
- //* 入口參數(shù):fData:需要計(jì)算的數(shù)據(jù)
- //* 出口參數(shù):返回fData的長(zhǎng)度(Unicode長(zhǎng)度為2,非Unicode長(zhǎng)度為1)
- //*****************************************************************
- function DataLength(fData)
- {
- var intLength=0
- for (var i=0;i<fData.length;i++)
- {
- if ((fData.charCodeAt(i) < 0) || (fData.charCodeAt(i) > 255))
- intLength=intLength+2
- else
- intLength=intLength+1
- }
- return intLength
- }
- //****************************************************************
- //* 名 稱:IsEmpty
- //* 功 能:判斷是否為空
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:空
- //* False:非空
- //*****************************************************************
- function IsEmpty(fData)
- {
- return ((fData==null) || (fData.length==0) )
- }
- //****************************************************************
- //* 名 稱:IsDigit
- //* 功 能:判斷是否為數(shù)字
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:是0到9的數(shù)字
- //* False:不是0到9的數(shù)字
- //*****************************************************************
- function IsDigit(fData)
- {
- return ((fData>="0") && (fData<="9"))
- }
- //****************************************************************
- //* 名 稱:IsInteger
- //* 功 能:判斷是否為正整數(shù)
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:是整數(shù),或者數(shù)據(jù)是空的
- //* False:不是整數(shù)
- //*****************************************************************
- function IsInteger(fData)
- {
- //如果為空,返回true
- if (IsEmpty(fData))
- return true
- if ((isNaN(fData)) || (fData.indexOf(".")!=-1) || (fData.indexOf("-")!=-1))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsEmail
- //* 功 能:判斷是否為正確的Email地址
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:正確的Email地址,或者空
- //* False:錯(cuò)誤的Email地址
- //*****************************************************************
- function IsEmail(fData)
- {
- if (IsEmpty(fData))
- return true
- if (fData.indexOf("@")==-1)
- return false
- var NameList=fData.split("@");
- if (NameList.length!=2)
- return false
- if (NameList[0].length<1 )
- return false
- if (NameList[1].indexOf(".")<=0)
- return false
- if (fData.indexOf("@")>fData.indexOf("."))
- return false
- if (fData.indexOf(".")==fData.length-1)
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsPhone
- //* 功 能:判斷是否為正確的電話號(hào)碼(可以含"()"、"()"、"+"、"-"和空格)
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:正確的電話號(hào)碼,或者空
- //* False:錯(cuò)誤的電話號(hào)碼
- //* 錯(cuò)誤信息:
- //*****************************************************************
- function IsPhone(fData)
- {
- var str;
- var fDatastr="";
- if (IsEmpty(fData))
- return true
- for (var i=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))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsPlusNumeric
- //* 功 能:判斷是否為正確的正數(shù)(可以含小數(shù)部分)
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:正確的正數(shù),或者空
- //* False:錯(cuò)誤的正數(shù)
- //* 錯(cuò)誤信息:
- //*****************************************************************
- function IsPlusNumeric(fData)
- {
- if (IsEmpty(fData))
- return true
- if ((isNaN(fData)) || (fData.indexOf("-")!=-1))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsNumeric
- //* 功 能:判斷是否為正確的數(shù)字(可以為負(fù)數(shù),小數(shù))
- //* 入口參數(shù):fData:要檢查的數(shù)據(jù)
- //* 出口參數(shù):True:正確的數(shù)字,或者空
- //* False:錯(cuò)誤的數(shù)字
- //* 錯(cuò)誤信息:
- //*****************************************************************
- function IsNumeric(fData)
- {
- if (IsEmpty(fData))
- return true
- if (isNaN(fData))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsIntegerInRange
- //* 功 能:判斷一個(gè)數(shù)字是否在指定的范圍內(nèi)
- //* 入口參數(shù):fInput:要檢查的數(shù)據(jù)
- //* fLower:檢查的范圍下限,如果沒有下限,請(qǐng)用null
- //* fHigh:檢查的上限,如果沒有上限,請(qǐng)用null
- //* 出口參數(shù):True:在指定的范圍內(nèi)
- //* False:超出指定范圍
- //*****************************************************************
- function IsIntegerInRange(fInput,fLower,fHigh)
- {
- if (fLower==null)
- return (fInput<=fHigh)
- else if (fHigh==null)
- return (fInput>=fLower)
- else
- return ((fInput>=fLower) && (fInput<=fHigh))
- }
新聞熱點(diǎn)
疑難解答
圖片精選