Javascript 使用数组中的键合并对象的最佳方法?
使用键合并数组中对象的最佳方法是什么Javascript 使用数组中的键合并对象的最佳方法?,javascript,arrays,json,object,ecmascript-6,Javascript,Arrays,Json,Object,Ecmascript 6,使用键合并数组中对象的最佳方法是什么 [ { "refr": "https://example.com/", "transactions": 1 }, { "refr": null, "pageviews": 1 }, { "refr": "https://example.com
[
{
"refr": "https://example.com/",
"transactions": 1
},
{
"refr": null,
"pageviews": 1
},
{
"refr": "https://example.com/",
"pageviews": 1
}
]
使用“refr”键获得所需结果:
[
{
"refr": "https://example.com/",
"transactions": 1,
"pageviews": 1
},
{
"refr": null,
"pageviews": 1
},
]
我正在寻找一种不使用任何第三方工具(如lodash)的解决方案。使用Array.prototype.reduce,您可以按refr键对值进行分组
常量输入=[
{
参考文献:https://example.com/,
交易:1
},
{
refr:null,
浏览量:1
},
{
参考文献:https://example.com/,
浏览量:1
}
];
const groupByRefr=input.reduceac,cur=>{
acc[cur.refr]?acc[cur.refr]={…acc[cur.refr],…cur}:acc[cur.refr]=cur;
返回acc;
}, {};
常量结果=Object.valuesGroupByRef;
console.logresult 使用Array.prototype.reduce,可以按refr键对值进行分组
常量输入=[
{
参考文献:https://example.com/,
交易:1
},
{
refr:null,
浏览量:1
},
{
参考文献:https://example.com/,
浏览量:1
}
];
const groupByRefr=input.reduceac,cur=>{
acc[cur.refr]?acc[cur.refr]={…acc[cur.refr],…cur}:acc[cur.refr]=cur;
返回acc;
}, {};
常量结果=Object.valuesGroupByRef;
console.logresult;