我是Javascript的新手,来自Java,这对我来说不太直观。
我想检查标题值的重复,并将重复的标题连接到生产者名称
我的想法是对值进行排序,然后检查每个值是否为复制
你能建议我如何实施这种解决方案吗?
decodeURIComponent(escape(myString))
谢谢
答案 0 :(得分:0)
您可以测试项目是否与此功能有重复项,它使用过滤器查找相同的项目并检查长度是否大于1。
function haveDuplicates(itemKeys, itemsMap, itemKey) {
var item = itemsMap[itemKey];
var dups = itemKeys.filter(function(key) {
return itemsMap[key] == item;
});
return dups.length > 1;
}
var itemsMap = {
'foo': 'Lorem',
'bar': 'Lorem',
'baz': 'Ipsum',
'quux': 'Dolor'
};
var output = document.getElementById('output');
var itemKeys = Object.keys(itemsMap);
itemKeys.map(function(key) {
output.innerHTML += itemsMap[key] + ' ' +
(haveDuplicates(itemKeys, itemsMap, key) ? 'have' : 'don\'t have') + '\n';
});

<pre id="output"></pre>
&#13;
答案 1 :(得分:0)
这就是我最终所做的事情,而且这项工作
var duplicateMap = {};
_.each(itemsMap, function(item) {
var title = item.title.trim();
if (duplicateMap[title]) {
duplicateMap[title] = 2;
}
else {
duplicateMap[title] = 1;
}
});