我在解析 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/