如何使用Javascript从json中的“深度”创建类似于集合的数组

时间:2014-08-29 18:29:51

标签: javascript json

[
    {
        "item": "1",
        "values": [{"name": "A"}]
    },
    {
        "item": "2",
        "values": [{"name": "B"}]
    },
    {
        "item": "3",
        "values": [{"name": "A"}]
    }
]

,所需的结果是:从名称字段中抓取["A", "B"]

那是什么“Javascript实践”?感谢。

1 个答案:

答案 0 :(得分:0)

首先,嵌套数组定义中存在语法错误。

"values": ["name": "A"]  // this is not valid javascript

......我猜你想要更像这样的东西?

x=[
    {
        "item": "1",
        "values": {"name": "A"}
    },
    {
        "item": "2",
        "values": {"name": "B"}
    },
    {
        "item": "3",
        "values": {"name": "A"}
    }
]

其次,对于你真正的问题 - 我会使用下划线JS或Lodash库来提供帮助。特别是他们的地图功能。因此,假设您使用我在上面为x定义的对象,并使用下划线JS ...

.map(x, function(y){return y.values.name})
["A", "B", "A"]

希望有所帮助。