Skip to content

Instantly share code, notes, and snippets.

@markyun
Created November 28, 2013 09:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save markyun/7689414 to your computer and use it in GitHub Desktop.
Save markyun/7689414 to your computer and use it in GitHub Desktop.
纯javascript验证邮箱格式
//邮箱验证纯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("asddd@gui.com"));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment