为了账号安全,请及时绑定邮箱和手机立即绑定

使用数组中的键合并对象的最佳方法?

使用数组中的键合并对象的最佳方法?

慕哥6287543 2023-09-07 16:39:09
使用键合并数组中的对象的最佳方法是什么?[   {      "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)的解决方案。
查看完整描述

1 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

使用Array.prototype.reduce,您可以refr按键对值进行分组。


const input = [

   {

      "refr": "https://example.com/",

      "transactions": 1

   },

   {

      "refr": null,

      "pageviews": 1

   },

   {

      "refr": "https://example.com/",

      "pageviews": 1

   }

];


const groupByRefr = input.reduce((acc, cur) => {

  acc[cur.refr] ? acc[cur.refr] = { ...acc[cur.refr], ...cur } : acc[cur.refr] = cur;

  return acc;

}, {});

const result = Object.values(groupByRefr);

console.log(result);


查看完整回答
反对 回复 2023-09-07
  • 1 回答
  • 0 关注
  • 57 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信