动作脚本中的JSON:如何获取JSON对象的属性和值?

时间:2011-08-06 13:30:50

标签: actionscript-3 json

假设我有这个JSON,并且假设属性可能会改变......

'{"srcLocation":"pc","filename":"name","fileext":"jpg","url":""}';

首先我要获取它们的所有属性(srcLocation,filename等) 并使用我得到的属性,我想得到相应的值..

我怎么能在动作脚本中做到这一点?

3 个答案:

答案 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解码。