Также обратите внимание, что вам нужно избавиться от лишних пробелов, поэтому дополнительный шаг нужно добавить следующим образом:
var emailStr = "felipe@google.com , felipe2@google.com, emanuel@google.com\n";
function validateEmailList(raw){
var emails = raw.split(',')
var valid = true;
var regex = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
for (var i = 0; i < emails.length; i++) {
if( emails[i] === "" || !regex.test(emails[i].replace(/\s/g, ""))){
valid = false;
}
}
return valid;
}
console.log(validateEmailList(emailStr))
Добавив .replace(/\s/g, "")
, вы убедитесь, что все пробелы, включая новые строки и вкладки удаляются. результат выборки верен, поскольку мы избавляемся от всех пробелов.