Ramda 从数组内的嵌套对象获取密钥

Ramda get keys from nested object inside array

提问人:mjolk 提问时间:1/27/2023 最后编辑:mjolk 更新时间:1/27/2023 访问量:99

问:

我有一个嵌套对象数组。我正在尝试遍历数组并从嵌套对象中获取 id 列表。

        "group": [
        {
          "groupId": "1",
          "subGroup": {
            "id": "44",
            "name": "Testing",
          }
        },
 {
          "groupId": "2",
          "subGroup": {
            "id": "45",
            "name": "Testing",
          }
        },
 {
          "groupId": "3",
          "subGroup": {
            "id": "46",
            "name": "Testing",
          }
        }
      ]

我正在尝试返回一个 id 列表,如下所示 =>[44, 45, 46]

我试过了,但它没有产生我需要的结果。const result = map(path("subGroup", "id"), group),

JavaScript ReactJS 数组 嵌套列表 ramda.js

评论


答:

2赞 Scott Christopher 1/27/2023 #1

你采用的方法很好,只是 R.path 需要路径索引数组而不是多个参数。

map(path(["subGroup", "id"]), group)

或者,您也可以只使用数组方法来获得相同的结果。map

group.map(g => g.subGroup.id)