Javascript 如果我的数组在React中具有相同的id,如何创建新数组

Javascript 如果我的数组在React中具有相同的id,如何创建新数组,javascript,reactjs,Javascript,Reactjs,如果我的数组在React中具有相同的id,如何创建新数组 如果他有相同的id,我对将数组处理为2个数组感到困惑,那么我应该采取哪些正确的步骤才能找到出路 我的阵列 array = [ { name : 'foo1', id_ : 3451, statuse : true }, { name : 'foo2', id_ : 3451, statuse : false }, {

如果我的数组在React中具有相同的id,如何创建新数组 如果他有相同的id,我对将数组处理为2个数组感到困惑,那么我应该采取哪些正确的步骤才能找到出路

我的阵列

   array = [
    {
      name : 'foo1',
      id_ : 3451,
      statuse : true
    },
    {
      name : 'foo2',
      id_ : 3451,
      statuse : false
    },
    {
      name : 'foo3',
      id_ : 3452,
      statuse : false
    },
    {
      name : 'foo1',
      id_ : 3452,
      statuse : true
    },
  ]
以及我想要的结果

result = [
    [
      {
        name : 'foo1',
        id_ : 3451,
        statuse : true
      },
      {
        name : 'foo2',
        id_ : 3451,
        statuse : false
      },
    ],
    [
      {
        name : 'foo3',
        id_ : 3452,
        statuse : false
      },
      {
        name : 'foo1',
        id_ : 3452,
        statuse : true
      },
    ]
  ]

您的问题有点不清楚,但我相信您希望通过元素的
id\uu
字段对数组的元素进行分组

可以使用以下代码段执行此操作:

const输入=[
{name:'foo1',id_u551;3451,status:true},
{name:'foo2',id_u551;3451,status:false},
{name:'foo3',id_u552;:3452,状态:false},
{name:'foo1',id_u552;:3452,状态:true},
];
const id=inputs.map(input=>input.id_);
const uniqIds=[…新集合(id)];
const result=uniqIds.map(id=>{
返回inputs.filter(input=>input.id==id);
});
控制台日志(结果)