说我有JSON数据如下:
var db=[
{"name":"John Doe","age":25},
{"name":"John Doe 2","age":21}
]
我知道如何使用js / jquery从JSON对象中检索数据。我需要的是获取标签的值,即我想从对象中检索“名称”和“年龄”。我实际上并不想检索值“John Doe”和25(我已经可以这样做了),而是我想要标签。
假设json对象有大约5个数据,每个数据包含10个字段。我需要动态地以表格形式显示json,我已经可以做了。由于json可以是任何一组值,我不知道要放在表的<th></th>
单元格中的标签。所以我需要一种方法来获得标签。
使用伪代码:
var db=[
{"name":"John Doe","age":25},
{"name":"John Doe 2","age":21}
]
for i in db{
for j in db[i]{
console.log(db[i][j].label+":"db[i][j])
}
}
//db[i][j].label doesn't really work
输出应为:
姓名:John Doe
年龄:25
姓名:John Doe
年龄:21
是否有javascript或jquery函数可以执行此操作或其他方法来检索所需的数据?
答案 0 :(得分:4)
您已经提取了属性名称(您正在呼叫&#34;标签&#34;)。你需要它来从对象中获取属性的值。
所以,它只是j
。
console.log(j + ":" + db[i][j]);
答案 1 :(得分:1)
您可以查看使用jQuery.each
函数:
$.each(db, function(index, record) {
$.each(record, function(key, value) {
console.log(key + ': ' + value);
});
});
答案 2 :(得分:0)
加载后,JSON数据只是一个对象(在您的情况下是一个对象数组)。您可以迭代每个单个对象的属性/键。
$.each(db, function(index, object) {
for (var property in object) {
var val = object[property];
// do stuff
console.log("property: " + property + ", val: " + val);
}
});