解析JSON以从父键获取子Array

时间:2014-04-11 02:59:05

标签: javascript arrays json angularjs

我有一个JSON对象,如下面给出的那个,其中最后一个子元素是一个字符串数组。我需要的是我应该通过" ParentKey"作为输入的函数,它应该返回所有数组项(在每个键下)推入统一数组而不必指定每个父键。

下面给出的对象的最终输出应该是:["Key1-Key1.1-Val1","Key1-Key1.1-Val2", "Key1-Key1.1-Val3", "Key1-Key1.1-Val4", "Key1-Key1.2-Val1",...]

"Parentkey": {
    "key1": {
        "key1.1": [
            "Val 1",
            "Val 2",
            "Val 3",
            "Val 4"
        ],
        "Key1.2": [
            "Val 1",
            "Val 2",
            "Val 3",
            "Val 4"
        ],
        "Key1.3": [
            "Val 1",
            "Val 2",
            "Val 3",
            "Val 4"
        ]
    },
    "key2": {
        "key2.1": [
            "Val 1",
            "Val 2",
            "Val 3",
            "Val 4"
        ]...
    }
}

该函数必须是这样的,我不能要求给出子键的名称,而只需要提供" ParentKey"作为一个对象。

基于此输出,我需要创建一个基于角度的指令,以根据用户的访问权限显示隐藏元素。

感谢。

1 个答案:

答案 0 :(得分:2)

这实质上是一个遍历问题。我建议看看:

Traverse all the Nodes of a JSON Object Tree with JavaScript

作为处理JSON对象的开始。您可以在走动对象时创建统一数组。