假设我有这个JSON,并且假设属性可能会改变......
'{"srcLocation":"pc","filename":"name","fileext":"jpg","url":""}';
首先我要获取它们的所有属性(srcLocation,filename等) 并使用我得到的属性,我想得到相应的值..
我怎么能在动作脚本中做到这一点?
答案 0 :(得分:3)
首先,您需要解码JSON,可能使用as3corelib:
var jsonString:String = '{"srcLocation":"pc","filename":"name","fileext":"jpg","url":""}';
var decodedObj:Object = JSON.decode(jsonString);
然后你要做的就是遍历对象以获得所有的名称/值对:
for(var key:String in decodedObj) {
trace("Name: " + key + " - Value: " + decodedObj[key];
}
将输出:
Name: srcLocation - Value: pc
Name: filename - Value: name
Name: fileext - Value: jpg
Name: url - Value:
答案 1 :(得分:0)
首先,您应该使用URLLoader加载JSON文件,然后将数据解码为Object 之后,您将能够获得相应的属性值 对象:
var myRequest:URLRequest = new URLRequest("Your JSON file Name");
var myLoader = new URLLoader();
myLoader.addEventListener(Event.COMPLETE, onload);
myLoader.load(myRequest);
function onload(evt:Event):void
{
var myData:Object = JSON.decode(myLoader.data);
trace(myData.firstName);
trace(myData.job);
trace(myData.age);
}
有任何进一步的帮助,请点击此链接: http://swati61.blogspot.com/2011/06/json-and-as3-communication.html
答案 2 :(得分:0)
我建议您使用Adobe的Native JSON解码。