如何访问对象数组中的元素?

时间:2016-02-11 00:44:27

标签: arrays json object javascript-objects

我在可变数据下以[object Object]的形式有如下JSON响应:

{
    "name": "John Johnson",
    "street": "Oslo West 16",
    "posts": {
        "id1": "121331",
        "id2": "9089085",
        "id3": "3424234"
    }
}

data等于[object Object]

data.posts等于{"id1":"121331","id2":"9089085","id3":"3424234"}

如何简单地访问id3值,因为它不等于data.posts.id3或等于data.posts['id3']

JSON.stringify(data)仅在\n内的对象之间提供\posts?这可能是问题吗?:

{
    "name": "John Johnson",
    "street": "Oslo West 16",
    "posts": { \n \"id1\": \"121331\", \n \"id2\": \"9089085\", \n \"id3\": \"3424234\"
    }
}

1 个答案:

答案 0 :(得分:2)

我怀疑data.posts实际上是一个字符串。尝试

JSON.parse(data.posts).id3

你应该弄明白为什么data.posts是一个字符串,因为每当你需要从JSON.parse(data.posts)获取某些内容时执行data.posts效率不高,更不用说额外的开销了双JSON编码。