我正在寻找一种通过唯一键将对象分组在一起的解决方案

I am looking for a solution to group objects by a unique key together

我目前有一个类似这样的数组,我可以使用的每个对象都有一个唯一的键(例如:“_key”:“qpfPdAZdFk”),我希望能够将它们分组到自己的数组中

[
 {
    "node": {
        "entity_as_json": {
        "_key": "qpfPdAZdFk"
    },
    1:1

},
{

    "node": {
        "entity_as_json": {
        "_key": "qpfPdabcd",
    },
    2:2
},
{

    "node": {
        "entity_as_json": {
        "_key": "qpfPdAZdFk"
    }
    3:3
},
{
    "node": {
        "entity_as_json": {
        "_key": "qpfPdAZdFk"
    },
    4:4

},
{
    "node": {
        "entity_as_json": {
        "_key": "qpfPdabcd",
    },
    5:5
},
{
    "node": {
        "entity_as_json": {
        "_key": "qpfPdabcd",
    },
    6:6
},
]

我希望能够return像这样组合在一起的数组

[
[
    {
        "node": {
            "entity_as_json": {
            "_key": "qpfPdAZdFk"
        },
        1:1

    },
    {

        "node": {
              "entity_as_json": {
            "_key": "qpfPdAZdFk"
        }
        3:3
    },
    {
        "node": {
              "entity_as_json": {
            "_key": "qpfPdAZdFk"
        },
        4:4

    },
],

[
    {

        "node": {
              "entity_as_json": {
            "_key": "qpfPdabcd",
        },
        2:2
    },
    {
        "node": {
              "entity_as_json": {
            "_key": "qpfPdabcd",
        },
        5:5
    },
    {
        "node": {
              "entity_as_json": {
            "_key": "qpfPdabcd",
        },
        6:6
    },
 ]
]

我一直在想一个解决方案,但我似乎无法让它工作,JavaScript 中是否有某种方法可以通过唯一性来识别?如果可行的话,我可以使用 Lodash。

非常感谢任何帮助

Lodash 非常适合这种情况。 Lodash 有一个 groupBy 函数 https://lodash.com/docs/4.17.15#groupBy 你可以像这样使用它

import _ from 'lodash'

const groupedCollection = _.groupBy(collection, 'node._key')