包含键值对javascript的数组

时间:2014-01-29 18:44:42

标签: javascript json rally

所以我有这个“故事”阵列:

 story[0]=[{"_ref":"/hierarchicalrequirement/15475417305","FormattedID":"US79832","Owner":"A","EstCP":0}]
 story[1]=[{"_ref":"/hierarchicalrequirement/15790056238","FormattedID":"US81776","Owner":"B","EstCP":0}]
 story[2]=[{"_ref":"/hierarchicalrequirement/15790059145","FormattedID":"US81777","Owner":"C","EstCP":7.5}]

如何获取故事[2]的“FormattedID”键?我试过了:

1. story[2].get("FormattedID")
2. story[2].FormattedID
3. story[2]["FormattedID"]
4. story[2][FormattedID]
5. story[2].getCollection("FormattedID")
6. story[2].get(FormattedID)

这些都不起作用。任何帮助,将不胜感激。感谢。

2 个答案:

答案 0 :(得分:2)

story[2]是一个只有一个条目的数组。您可以通过[0]访问该条目。该对象具有属性,所以:

story[2][0].FormattedID

...给你价值。

对于某些换行符,这可能更清楚。以下是您分配给story[2]的内容:

story[2]= [ // <== Starts array
    {       // <== Starts object
        "_ref": "/hierarchicalrequirement/15790059145",
        "FormattedID": "US81777",
        "Owner": "C",
        "EstCP": 7.5
    }       // <== Ends object
];          // <== Ends array

所以story[2][0]给了我们对象:

{
    "_ref": "/hierarchicalrequirement/15790059145",
    "FormattedID": "US81777",
    "Owner": "C",
    "EstCP": 7.5
}

...具有FormattedID属性。您可以使用点表示法和文字属性名称(.FormattedID),或使用括号表示法和字符串属性名称(["FormattedID"])来访问它。

答案 1 :(得分:1)

创建故事对象时删除括号。然后你可以按照你的期望去做它。

示例:

 story[0]={"_ref":"/hierarchicalrequirement/15475417305","FormattedID":"US79832","Owner":"A","EstCP":0}

story[0].FormattedID

使用括号,您实际上是在主阵列的每个位置创建一个包含一个项目的数组。