小编Pio*_*zak的帖子

JSON 对象中的递归数据

{
"groups": [
    {
        "name": "Event",
        "groups": [
            {
                "name": "Service",
                "subscriptions": [
                    {
                        "topic": "SERVICE_STATUS_PRESETS"
                    },
                    {
                        "topic": "AIRCRAFT_ACTIVATION",

                    },
                    {
                        "topic": "OUT_OF_SERVICE",

                    }
                ]
            }
        ]
    },
    {
        "name": "Enquiries",
        "groups": [
            {
                "name": "Service-related",
                "subscriptions": [
                    {

                        "topic": "PROMO_CODES_REQUESTS",

                    }
                ]
            }
        ]
    }
],
"subscriptions": [
    {
        "topic": "BANNERS",
    },
    {
        "topic": "DOCUMENTS",
    },
    {
        "topic": "USER",
    }
]
Run Code Online (Sandbox Code Playgroud)

}

好的,我有这样的 JSON 结构,我需要的是:返回数组中的所有主题,在本例中它将是:

[“SERVICE_STATUS_PRESETS”、“AIRCRAFT_ACTIVATION”、“OUT_OF_SERVICE”、“PROMO_CODES_REQUESTS”、“横幅”、“文档”、“用户”]

我尝试像这样的递归调用,尽管我只得到最后三个记录:

getRecursive() {
if (Array.isArray(data)) {
       for (let i = 0; i …
Run Code Online (Sandbox Code Playgroud)

javascript arrays recursion json object

4
推荐指数
1
解决办法
1万
查看次数

按公共属性过滤对象数组

是否有可能以某种方式过滤让我们说这样一个对象数组数组:

[[{id: 1}, {id: 2}, {id: 3}], [{id:6}, {id: 2}], [{id: 2}, {id: 1}, {id: 9}, {id: 3}]]
Run Code Online (Sandbox Code Playgroud)

要获取所有数组具有相同属性(id)的对象数组,因此在这种情况下,它的输出将是:

[{id: 2}] // becasue this id is the same in all three subarrays
Run Code Online (Sandbox Code Playgroud)

我只尝试过来自 loadash 的intersectionBy,但它似乎以完全不同的方式工作:/

javascript arrays filter javascript-objects data-structures

1
推荐指数
1
解决办法
1137
查看次数