У меня есть следующий массив объектов на стороне JS на стороне сервера:
[
{
"Company": "IBM"
},
{
"Person": "ACORD LOMA"
},
{
"Company": "IBM"
},
{
"Company": "MSFT"
},
{
"Place": "New York"
}
]
Мне нужно выполнить итерацию по этой структуре , обнаружить любые дубликаты, а затем создать счетчик дубликатов, найденных рядом с каждым значением.
Оба значения должны совпадать, чтобы считаться дубликатом, например. «Компания»: «IBM» не соответствует «Компания»: «MSFT».
При необходимости у меня есть возможность изменить входящий массив объектов. Я хотел бы, чтобы вывод был объектом, но я действительно изо всех сил пытаюсь заставить это работать.
РЕДАКТИРОВАТЬ: Вот код, который у меня есть до сих пор, где 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));