這篇文章主要介紹了JavaScript判斷字符長度、數字、Email、電話等常用判斷函數分享,本文直接給出實現代碼,需要的朋友可以參考下
- /****************************************************************
- //* 名 稱:DataLength
- //* 功 能:計算數據的長度
- //* 入口參數:fData:需要計算的數據
- //* 出口參數:返回fData的長度(Unicode長度為2,非Unicode長度為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
- //* 功 能:判斷是否為空
- //* 入口參數: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))
- return true
- if ((isNaN(fData)) || (fData.indexOf(".")!=-1) || (fData.indexOf("-")!=-1))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsEmail
- //* 功 能:判斷是否為正確的Email地址
- //* 入口參數:fData:要檢查的數據
- //* 出口參數:True:正確的Email地址,或者空
- //* False:錯誤的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
- //* 功 能:判斷是否為正確的電話號碼(可以含"()"、"()"、"+"、"-"和空格)
- //* 入口參數:fData:要檢查的數據
- //* 出口參數:True:正確的電話號碼,或者空
- //* False:錯誤的電話號碼
- //* 錯誤信息:
- //*****************************************************************
- 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
- //* 功 能:判斷是否為正確的正數(可以含小數部分)
- //* 入口參數:fData:要檢查的數據
- //* 出口參數:True:正確的正數,或者空
- //* False:錯誤的正數
- //* 錯誤信息:
- //*****************************************************************
- function IsPlusNumeric(fData)
- {
- if (IsEmpty(fData))
- return true
- if ((isNaN(fData)) || (fData.indexOf("-")!=-1))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsNumeric
- //* 功 能:判斷是否為正確的數字(可以為負數,小數)
- //* 入口參數:fData:要檢查的數據
- //* 出口參數:True:正確的數字,或者空
- //* False:錯誤的數字
- //* 錯誤信息:
- //*****************************************************************
- function IsNumeric(fData)
- {
- if (IsEmpty(fData))
- return true
- if (isNaN(fData))
- return false
- return true
- }
- //****************************************************************
- //* 名 稱:IsIntegerInRange
- //* 功 能:判斷一個數字是否在指定的范圍內
- //* 入口參數:fInput:要檢查的數據
- //* fLower:檢查的范圍下限,如果沒有下限,請用null
- //* fHigh:檢查的上限,如果沒有上限,請用null
- //* 出口參數:True:在指定的范圍內
- //* 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))
- }
新聞熱點
疑難解答
圖片精選