Javascript 删除嵌套对象数组中的重复项,并将es6中的唯一对象分组

Javascript 删除嵌套对象数组中的重复项,并将es6中的唯一对象分组,javascript,node.js,serverless,Javascript,Node.js,Serverless,在这里学习蜜蜂 我有一个嵌套的json对象数组,如下所示,我在将csv文件转换为对象并使用特定键对它们进行分组后得到该数组 请使用ES6帮助我理解这一点。我正在努力了解其他类似的职位使用减少,设置等任何帮助是非常感谢。谢谢 我无法完全理解你所说的复制品和删除它们的意思。我认为,您试图实现的是,将SKUBACODE和SKUQUANTITY聚合到一个数组中,并将所有相关元数据添加到该对象中。假设每个SKUBACODE在每个ORDERCLIENTREF中只存在一次,并且所有其他元数据都是不变的 des

在这里学习蜜蜂

我有一个嵌套的json对象数组,如下所示,我在将csv文件转换为对象并使用特定键对它们进行分组后得到该数组
请使用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执行任何操作,但没有对返回值执行任何操作。你的意思是退回已删除的副本。。。?