2015-08-31 42 views
-3
//get email from test area 

var emailList = document.getElementById("emailTextarea").value; 
var emailListArray = emailList.split("\n"); 

//Remove yahoo and duplicates from the list 

var usernamesArray = emailListArray.map(function(val, index, arr) { 
    return val.slice(0, val.indexOf('yahoo.com')); 
}); 
+1

那麼什麼是 「麻煩」 呢? –

回答

0

假設:

emailListArray = ['[email protected]','[email protected]','[email protected]','[email protected]'] 

你可以做這樣的事情:

var usernamesArray = []; 
emailListArray.forEach(function(item) { 
    if(usernamesArray.indexOf(item) < 0 && item.indexOf('yahoo.com') < 0) { 
     usernamesArray.push(item); 
    } 
}); 

第一個條件檢查,如果反過來元素是不是已經結果的數組,第二個條件檢查元素是否不包含子字符串yahoo.com,如果兩者均爲true,則將該元素添加到結果中。

之後,usernamesArray應該有:

[ '[email protected]', '[email protected]' ] 
+0

我複製你的代碼,但我無法讓它工作。列表中沒有任何內容。我錯過了什麼嗎? – MJB

+0

它爲我工作,我添加了示例輸入和輸出。你的代碼是否會引發錯誤? –