我在服务器端的JS中有一个对象数组,如下所示:
[
{
"Company": "IBM"
},
{
"Person": "ACORD LOMA"
},
{
"Company": "IBM"
},
{
"Company": "MSFT"
},
{
"Place": "New York"
}
]
我需要遍历这个结构,检测任何重复项,然后在每个值旁边创建一个计数,以便发现重复项。为了被视为重复项,两个值必须匹配,例如 "Company": "IBM" 不与 "Company": "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));