JavaScript判斷字符長度、數字、Email、電話等常用判斷函數分享
來源:易賢網 閱讀:858 次 日期:2015-04-02 16:20:16
溫馨提示:易賢網小編為您整理了“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))

}

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
未满十八18勿进黄网站免费看