У меня есть массив объектов следующим образом в моей стороне сервера JS:JavaScript - граф дубликатов в массиве объектов
[
{
"Company": "IBM"
},
{
"Person": "ACORD LOMA"
},
{
"Company": "IBM"
},
{
"Company": "MSFT"
},
{
"Place": "New York"
}
]
Мне нужно перебирать эту структуру, выявление дубликатов, а затем создать счетчик рядом с каждым значением находится дубликат.
Оба значения должны совпадать, чтобы квалифицироваться как дубликат, например. «Компания»: «IBM» не подходит для «Компании»: «MSFT».
У меня есть варианты изменения входящего массива объектов, если это необходимо. Я хотел бы, чтобы результат был объектом, но я действительно пытаюсь заставить его работать.
EDIT: Вот код, который у меня есть до сих пор, где processArray - это массив, как указано выше.
var returnObj = {};
for(var x=0; x < processArray.length; x++){
//Check if we already have the array item as a key in the return obj
returnObj[processArray[x]] = returnObj[processArray[x]] || processArray[x].toString();
// Setup the count field
returnObj[processArray[x]].count = returnObj[processArray[x]].count || 1;
// Increment the count
returnObj[processArray[x]].count = returnObj[processArray[x]].count + 1;
}
console.log('====================' + JSON.stringify(returnObj));
Возможный дубликат [Удалить дубликаты из массива объектов в javascript] (http://stackoverflow.com/questions/2218999/remove-duplicates-from-an-array-of-objects-in-javascript) –
И ** почему ** должен ли кто-то другой делать эту работу за вас? –
@RoyiNamir: hahaha это не я :) – Sarfraz