Javascript 删除嵌套对象数组中的重复项,并将es6中的唯一对象分组
在这里学习蜜蜂 我有一个嵌套的json对象数组,如下所示,我在将csv文件转换为对象并使用特定键对它们进行分组后得到该数组Javascript 删除嵌套对象数组中的重复项,并将es6中的唯一对象分组,javascript,node.js,serverless,Javascript,Node.js,Serverless,在这里学习蜜蜂 我有一个嵌套的json对象数组,如下所示,我在将csv文件转换为对象并使用特定键对它们进行分组后得到该数组 请使用ES6帮助我理解这一点。我正在努力了解其他类似的职位使用减少,设置等任何帮助是非常感谢。谢谢 我无法完全理解你所说的复制品和删除它们的意思。我认为,您试图实现的是,将SKUBACODE和SKUQUANTITY聚合到一个数组中,并将所有相关元数据添加到该对象中。假设每个SKUBACODE在每个ORDERCLIENTREF中只存在一次,并且所有其他元数据都是不变的 des
请使用ES6帮助我理解这一点。我正在努力了解其他类似的职位使用减少,设置等任何帮助是非常感谢。谢谢 我无法完全理解你所说的复制品和删除它们的意思。我认为,您试图实现的是,将SKUBACODE和SKUQUANTITY聚合到一个数组中,并将所有相关元数据添加到该对象中。假设每个SKUBACODE在每个ORDERCLIENTREF中只存在一次,并且所有其他元数据都是不变的
desired_output = json_array
.filter((group) => group != null && group.length > 0)
.map((group) => {
// create a hash map for sku
const skuMap = group.reduce((acc, curr) => acc.set(curr.SKUBARCODE, SKUQUANTITY), new Map());
const new_obj = group[0];
new_obj.SKUBARCODE = undefined;
new_obj.SKUQUANTITY = undefined;
// generate output of hash map
new_obj.ORDERLINES = [...skuMap].map(([code, quant]) {
return {
SKUBARCODE: code,
SKUQUANTITY: quant
};
});
return new_obj;
});
看起来您正在尝试从一组对象中获取这两个字段SKUBARCODE和SKUQUANTITY。你可以这样试试
const groupOfSimilarObejcts = grouped.reduce((accumulated, currentGroup) => {
return {
...currentGroup,
ORDERLINES: [...currentGroup, {
SKUBARCODE: currentGroup.SKUBARCODE,
SKUQUANTITY: currentGroup.SKUQUANTITY
}]
};
}, {});
让我们看看你试过什么。因此,这不是一个免费的代码编写服务。这里的目的是让你发布你解决自己问题的尝试,当这些尝试没有达到预期效果时,其他人会提供帮助。查看并添加我的代码!谢谢你的指导。下一次,我会确保我听起来是明智的。你能添加更多的预期结果的例子吗?我无法在中的单个对象中看到模式。您的代码在做什么而不起作用?我注意到,您没有对您调用的RemovedUpplicates执行任何操作,但没有对返回值执行任何操作。你的意思是退回已删除的副本。。。?