Javascript 操纵对象、添加和分组关键点
如何按月分组并添加值根据这个物体的位置Javascript 操纵对象、添加和分组关键点,javascript,arrays,object,Javascript,Arrays,Object,如何按月分组并添加值根据这个物体的位置 original = {"data":[["Dic",0,0,165,0],["Ene",0,0,200,0],["Ene",150,0,0,0],["Ene",150,20,10,500]]} what i need = {"data":[["Dic",0,0,165,0],["Ene",300,20,210,500]]} 创建一个临时对象,使用第一个数组元素值作为键对项目进行分组。然后在每次迭代中映射新值 const original={“d
original = {"data":[["Dic",0,0,165,0],["Ene",0,0,200,0],["Ene",150,0,0,0],["Ene",150,20,10,500]]}
what i need = {"data":[["Dic",0,0,165,0],["Ene",300,20,210,500]]}
创建一个临时对象,使用第一个数组元素值作为键对项目进行分组。然后在每次迭代中映射新值
const original={“data”:[[“Dic”,0,0165,0],“Ene”,0,0200,0],“Ene”,150,0,0,0],“Ene”,150,20,10500]]
const tmp=原始.data.reduce((a,c)=>{
a[c[0]=(a[c[0]]|[c[0,0,0,0]).map((el,i)=>i?el+c[i]:el);
返回a;
}, {});
original.data=Object.keys(tmp.map)(key=>tmp[key]);
console.log(JSON.stringify(original))
这似乎很简单,您尝试过什么?假设你没有大量的数据(也就是说,你不需要太多的优化),制作一个跟踪结果的字典,以及一个遍历列表并用遇到的值更新字典的循环。可能重复