flash - AS3 基本解析 JSON

标签 flash actionscript-3 json

我在解析 AS3 中的 JSON 文件时遇到问题。我试图解析多个 JSON 数组,但在访问第一个数组后真的不知道如何进入下一个数组。我的 JSON 文件如下所示:

{
  "term": [{
      "id": 4211,
      "place": "NEW YORK CITY"
    },
    {
      "id": 2675,
      "place": "WASHINGTON (DC)"

    }
  ],
  "term": [{
      "id": 4211,
      "place": "NEW YORK CITY"
    },
    {
      "id": 2675,
      "place": "WASHINGTON (DC)"

    }
  ]

}

我的 AS3 代码如下所示:

public function parseData(e: Event): void {
 var loader: URLLoader = URLLoader(e.target);
 var values: Object = JSON.decode(loader.data);
 var term: Array = values.term;
 var counter: Number = 0;

 for (var key: Object in term) {
  payload[counter] = [term[key].id, term[key].place];
  counter++;
 }

 dispatchEvent(new Event(Event.COMPLETE));
}

我可以从第一个数组中获取数据,但是我将如何构造我的代码以便我可以遍历 2 个或更多“术语”数组?

谢谢

最佳答案

JSON(或任何其他有序映射类型)不能保存重复的键。

解决方案是将 JSON 重组为如下所示:

{   
    "terms": [
        [
            {
                "id": 4211,
                "place": "NEW YORK CITY" 
            },
            {
                "id": 2675,
                "place": "WASHINGTON (DC)"

            }
        ],
        [
            {
                "id": 4211,
                "place": "NEW YORK CITY" 
            },
            {
                "id": 2675,
                "place": "WASHINGTON (DC)"

            }
        ]
    ]
}

关于flash - AS3 基本解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1686139/

相关文章:

flash - 通过 apache 5.5 显示视频

javascript - 如何使用 swfObject 和 Spark 嵌入宽度和高度为 100% 的 swf?

flash - 使用 SWC - getDefinitionByName 问题

json - 在部署级别配置资源组和azure功能

java - 如何在没有 AttributeConverter 或 customUserType 的情况下使用 Hibernate 5.2.10 MySQL JSON 支持来映射到 Java 实体类?

html - 如何缩小 div 高度以适合图像

apache-flex - 在 Flash Player 中播放来自 ByteArray 的 FLV

flash - as3 : youtube api/possible to add youtube's "like-button" (rating)?

flash - 在 ActionScript 中将 WAV 转换为 MP3

java - 在 Mongo 中插入 JSON