代码之家  ›  专栏  ›  技术社区  ›  Muthukumar Marichamy

使用lodash,如何获得嵌套数组对象的最大长度

  •  -2
  • Muthukumar Marichamy  · 技术社区  · 8 年前

    我需要从下面提到的对象数组中获取数据,该数组具有嵌套数组对象的最大长度。根据以下我的要求,id:2个值有3个对象,结果如下所述。

    任何人都可以帮助我使用lodash或一些javascript函数来实现这一点。

    样本请求:

    [{
        "id": 1,
        "values": [
            {
                "sub": "fr",
                "name": "foobar1"
            }, 
            {
                "sub": "en",
                "name": "foobar2"
            }
        ]
    }, 
    {
        "id": 2,
        "values": [
            {
                "sub": "fr",
                "name": "foobar3"
            },
            {
                "sub": "en",
                 "name": "foobar4"
            },
            {
                    "sub": "ts",
                     "name": "foobar5"
                },
            ]
        }]
    

    预期输出:

    "values": [
            {
                "sub": "fr",
                "name": "foobar3"
            },
            {
                "sub": "en",
                 "name": "foobar4"
            },
            {
                    "sub": "ts",
                     "name": "foobar5"
                },
            ]
        }]
    
    1 回复  |  直到 8 年前
        1
  •  1
  •   Anth12    8 年前

    这可以使用本机javascript实现 reduce 功能如下

    var source = [...];
    source.reduce((max, cur) => cur.values.length > max.values.length ? cur : max, source[0])