【问题标题】:Retrieving labels from JSON objects in javascript从 javascript 中的 JSON 对象中检索标签
【发布时间】:2014-08-08 13:10:02
【问题描述】:

假设我有如下 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

输出应该是:

姓名:约翰·多伊

年龄:25

姓名:约翰·多伊

年龄:21

是否有 JavaScript 或 jQuery 函数来执行此操作或其他方法来检索所需数据?

【问题讨论】:

标签: javascript jquery json


【解决方案1】:

您已经在获取属性名称(您称之为“标签”)。您需要它来从对象中获取属性的值。

所以,它只是j

console.log(j + ":" + db[i][j]);

【讨论】:

    【解决方案2】:

    一旦加载,JSON 数据只是一个对象(在您的情况下是一个对象数组)。您可以迭代每个对象的属性/键。

    例如

    $.each(db, function(index, object) {
        for (var property in object) {
            var val = object[property];
            // do stuff
            console.log("property: " + property + ", val: " + val);
        }
    });
    

    JSFiddle:http://jsfiddle.net/TrueBlueAussie/5hkr8k2x/

    【讨论】:

      【解决方案3】:

      你可以看看使用jQuery.each函数:

      $.each(db, function(index, record) {
          $.each(record, function(key, value) {
              console.log(key + ': ' + value);
          });
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-25
        • 1970-01-01
        相关资源
        最近更新 更多