Created
November 28, 2013 09:36
-
-
Save markyun/7689414 to your computer and use it in GitHub Desktop.
纯javascript验证邮箱格式
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//邮箱验证纯javascript | |
function checkEmail(emailStr){ | |
var start=0; | |
var end=emailStr.length; | |
while(start<end){//判断是否含有除"@"和"."之外的特殊字符和中文字符 | |
var charcode=emailStr.charCodeAt(start); | |
if(!(charcode==45||charcode==46|| | |
(charcode>=48&charcode<=59)|| | |
(charcode>=64&charcode<=90)|| (charcode>=97&charcode<=122))){ | |
//alert("有非法字符"+emailStr.charAt(start)); | |
return false; | |
} | |
start++; | |
} | |
var emailStrArr=emailStr.split("@"); | |
if(emailStrArr.length!=2){//判断@的个数是否为有且仅有一个 | |
return false; | |
}else if(emailStrArr[0]==''||emailStrArr[1]==''){//判断"@"的位置是否正确 | |
return false; | |
}else{ | |
if(emailStrArr[0].split(".").length>1){//判断@前面的字符串是否含有"." | |
return false; | |
} | |
var emailStr2Arr=emailStrArr[1].split("."); | |
if(emailStr2Arr.length<2){//判断@后面的字符串是否含有"." | |
return false; | |
}else if(emailStr2Arr[0]==''||emailStr2Arr[emailStr2Arr.length]==''){//判断"."的位置是否正确 | |
return false; | |
}else if(!(emailStr2Arr[emailStr2Arr.length-1]=='com'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='cn'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='gov'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='edu'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='net'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='org'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='int'|| | |
emailStr2Arr[emailStr2Arr.length-1]=='mil')){//判断域名后缀名是否正确 | |
return false; | |
} | |
} | |
return true; | |
} | |
alert(checkEmail("[email protected]")); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment