【问题标题】:Create array from JSON - Javascript从 JSON 创建数组 - Javascript
【发布时间】:2011-12-26 13:17:10
【问题描述】:

我有一个 JSON 文件,我想从中创建一个数组。

这是 JSON 数据。

{
  "table": {
    "columnNames": ["column1", "column2", "column3", "column4"],
    "columnTypes": ["String", "String", "String", "String"],
    "rows": [
      ["data00", "data01", "data02", "data03"],
      ["data10", "data11", "data12", "data13"],
      ["data20", "data21", "data22", "data23"],
      ["data30", "data31", "data32", "data33"]
     ]
   }
}

我需要从“行”部分中的对象创建一个数组。

任何帮助将不胜感激!

谢谢!!!

编辑

是否可以根据行中的数据创建哈希表? 另外,您将如何对 json 文件执行 JSON.parse? 谢谢

【问题讨论】:

    标签: javascript arrays json


    【解决方案1】:

    您的意思是要获得一个包含所有值的数组吗?

    var rows = [];
    
    for (var i = 0; i < data.table.rows.length; i++) {
        rows.push.apply(rows, data.table.rows[i]);
    }
    

    请参阅 pushapply 的 MDN 文档。

    这假设您已将问题中的数据存储在变量data 中。如果您仅将其作为 JSON 字符串,则需要将其转换为 JSON.parse

    【讨论】:

    • 是否可以创建一个多维数组,其中包含行,然后是每行中的单个数据?
    • 已经是多维数组了,直接用data.table.rows去抢吧
    【解决方案2】:

    JSON 基本上已经是 javascript,所以一旦您将 decoded the JSON string 返回到原生 JS 数据结构,那么这将是一件简单的事情:

    var rowsarray = decoded_json.table.rows;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-29
      • 2016-06-01
      • 1970-01-01
      • 2010-09-19
      相关资源
      最近更新 更多