如何解析以下JSON以检索值

时间:2015-12-28 09:59:42

标签: javascript json

我有以下JSON

SemanticView

我可以使用

来恢复T1值
[{
    "T1": "cost"
}, {
    "T6": "Service Tax"
}, {
    "T3": "VAT"
}, {
    "T4": "OtherTax2"
}, {
    "T5": "OtherTax1"
}, {
    "T2": "Discount"
}, {
    "T7": "Service Charge"
}];

但是当我试图重新获得T2值时,为什么它会给我未定义的

http://jsfiddle.net/mwv6r0df/4/

请告诉我如何检索所有值

2 个答案:

答案 0 :(得分:2)

这是因为第一个index没有属性名称T2

首先Index只有一个属性名称T1

5th索引的属性名称为T2

console.log(myjson[5].T2);

如果您的对象设计是

[{
    "T1": "cost",
    "T6": "Service Tax",
    "T3": "VAT",
    "T4": "OtherTax2",
    "T5": "OtherTax1",
    "T2": "Discount",
    "T7": "Service Charge"
}];

然后你的方法是正确的。

console.log(myjson[0].T2);

但在你的设计中,每个指数都有不同的属性。

JSFIDDLE

答案 1 :(得分:0)

你的JSON

console.log(myjson.toString());

<强>输出

[object Object],[object Object],[object Object],...,[object Object]
       ↑              ↑                ↑                   ↑
idx = (1)            (2)              (3)                 (n)  

如果这样的话

var myjson = 
[{
    "T1": "cost", 
    "T6": "Service Tax",
    "T3": "VAT",
    "T4": "OtherTax2",
    "T5": "OtherTax1",
    "T2": "Discount",
    "T7": "Service Charge"
}];

<强>输出

[object Object]