![](/img/trans.png)
[英]How to combine the values which is array of the same property in the object's array javascript
[英]How to combine array that has the same values in Javascript
我有以下数组:
0: {x: "/", y: 8}
1: {x: "/a", y: 7}
2: {x: "/a", y: 2}
3: {x: "/", y: 1}
我怎样才能把它变成:
0: {x: "/", y: 9}
1: {x: "/a", y: 9}
相同的 X 值加上它们的 Y 值。
它应该只寻找相同的X
值,如果它们相同,它将它们组合并将它们的Y
加在一起。
您可以将Array#reduce
与 object 一起使用来存储每个x
的值。
let arr = [{x: "/", y: 8},{x: "/a", y: 7},{x: "/a", y: 2},{x: "/", y: 1}]; let res = Object.values(arr.reduce((acc,{x,y})=>{ (acc[x] = acc[x] || {x, y:0}).y += y; return acc; }, {})); console.log(res);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.