我有一个JavaScript变量,用于存储用户在界面中插入的电子邮件ID。
var contacts="[email protected],[email protected],[email protected],[email protected]"
在此变量中存储了重复的电子邮件ID。如何删除重复变量并存储每个变量的一次出现?
最佳答案
如果您使用的是underscore或lodash,则:
contacts = _.unique(contacts.split(',')).join(',');
如果没有,请执行以下操作:
var emails = contacts.split(',');
seenEmails = {},
newContacts = [];
for(var i = 0; i < emails.length; i++) {
if(!seenEmails[emails[i]]) {
seenEmails[emails[i]] = true;
newContacts.push(emails[i]);
}
}
contacts = newContacts.join(',');
这将适用于所有不带库的浏览器,并且比
indexOf
效率更高。关于javascript - 删除JavaScript变量中以逗号分隔格式存储的重复电子邮件ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17986706/