min*_*pop 11 flash json actionscript-3
我一直试图让JSON与AS3合作一段时间,但无济于事.当我收到JSON时,我一直收到以下错误:
TypeError:错误#1034:类型强制失败:无法将Object @ 26331c41转换为Array.
我已经尝试将变量"jsonData"的数据类型更改为object,这样可以修复错误,但我并不完全确定如何解析数据.
package
{
import flash.display.Sprite;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.events.*;
import com.adobe.serialization.json.JSON;
public class DataGrab extends Sprite {
public function DataGrab() {
}
public function init(resource:String):void {
var loader:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest(resource);
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(request);
}
private function onComplete(e:Event):void {
var loader:URLLoader = URLLoader(e.target);
var jsonData:Array = JSON.decode(loader.data);
trace(jsonData);
}
}
}
Run Code Online (Sandbox Code Playgroud)
Rau*_*ait 15
当你把jsonData变量作为一个变量时,你是对的Object.要遍历该变量的所有属性,您可以执行以下操作:
var jsonData:Object = JSON.decode(loader.data);
for (var i:String in jsonData)
{
trace(i + ": " + jsonData[i]);
}
Run Code Online (Sandbox Code Playgroud)
如果要检查对象是否包含特定属性,可以使用以下内容:
var hasFooProperty:Boolean = jsonData.hasOwnProperty("fooProperty");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13392 次 |
| 最近记录: |