2015-08-25 53 views
0

我有这样的JSON数据,存储在一个jQuery变量“jsondata”:获取JSON的文本值关键

var jsondata = { 
    "Name": { 
    "Jaken": {}, 
    "Test": {}, 
    "Hello": {} 
    }, 
    "Date": { 
    "Today": {}, 
    "Tomorrow": {}, 
    "Wednesday": {} 
    }, 
    "Description": { 
    "Me": {}, 
    "Tester": {}, 
    "World": {} 
    }, 
    "Another": { 
     "Test": {}, 
     "Test2": {} 
    } 
}; 

我试图找出如何得到这个词‘测试’作为一个字符串。我试过alert(jsondata.Another[1]);,但可以理解的是,undefined。我试过alert(value.jsondata.Another[1]);(不知道为什么,我想这会工作,但它是值得一试我猜。

有没有说明如何在jQuery中作为一个字符串发现JSON数据的密钥名称的任何文档?

回答

5

无需使用jQuery。使用Object.keys

var jsondata = { 
 
    "Name": { 
 
    "Jaken": {}, 
 
    "Test": {}, 
 
    "Hello": {} 
 
    }, 
 
    "Date": { 
 
    "Today": {}, 
 
    "Tomorrow": {}, 
 
    "Wednesday": {} 
 
    }, 
 
    "Description": { 
 
    "Me": {}, 
 
    "Tester": {}, 
 
    "World": {} 
 
    }, 
 
    "Another": { 
 
    "Test": {}, 
 
    "Test2": {} 
 
    } 
 
}; 
 
console.log(Object.keys(jsondata.Another)[0]);

0

这其实不是JSON,这是一个object你正在寻找需要的变量通过键来访问,而不是1

alert(jsondata.Another.Test2); 

作为一个侧面说明...如果你想要操纵JSON,您可以使用JSON.parse()

1

您可以使用Object.keys来获取对象的键作为数组:

Object.keys(jsondata.Another)[0];