2010-11-22 306 views
8

我在编写一个函数,它将用户的电子邮件作为参数并返回电子邮件的第一部分,但不包括“ @“符号。问题是我对功能很糟糕,而且这个功能有问题,但我不确定它是什么。当我尝试将该函数写入页面以查看它是否正常工作时,它会一直显示为未定义的。在“@”符号之前解析文本的电子邮件

function emailUsername(emailAddress) 
{ 
    var userName = ""; 
    for(var index = 0; index < emailAddress.length; index++) 
    { 
     var CharCode = emailAddress.charCodeAt(index); 
     if(CharCode = 64) 
     { 
      break; 
     } 
     else 
     { 
      userName += emailAddress.charAt(index); 
      return userName; 
     } 
    } 
} 

var email = new String(prompt("Enter your email address: ","")); 
var write = emailUsername(email); 
document.write(write); 

我敢肯定还有其他的方法来做到这一点,但我需要大致遵循使用功能检查“@”之前是什么以及使用方法,发现它的这种格式。

回答

28

像这样:

return emailAddress.substring(0, emailAddress.indexOf("@")); 
+0

我是一个白痴....谢谢。 – Greener 2010-11-22 19:08:42

3
function emailUsername(emailAddress) { 
    return emailAddress.match(/^(.+)@/)[1]; 
}