日期:2014-05-16 浏览次数:20293 次
啥也不说了,再次说明用别人的东西一定要小心,as3corelib,用也要小心
使用环境:flash cs3
程序说话:
var str : String = "{a:'0',b:'0',c:''}"; var obj : Object = JSON.decode(str);
?出错,
Error: Unexpected a encountered at XX.serialization::JSONTokenizer/parseError() at XX.serialization::JSONTokenizer/getNextToken() at XX.serialization::JSONDecoder/::nextToken() at XX..serialization::JSONDecoder/::parseObject() at XX.serialization::JSONDecoder/::parseValue() at XX..serialization::JSONDecoder$iinit() at XX..serialization::JSON$/decode()?
改一下:
var str : String = '{a:"0",b:"0",c:""}'; var obj : Object = JSON.decode(str);
?出错
Error: Unexpected a encountered at XX.serialization::JSONTokenizer/parseError() at XX.serialization::JSONTokenizer/getNextToken() at XX.serialization::JSONDecoder/::nextToken() at XX..serialization::JSONDecoder/::parseObject() at XX.serialization::JSONDecoder/::parseValue() at XX..serialization::JSONDecoder$iinit() at XX..serialization::JSON$/decode()
?
再改一下:
var str : String = '{"a":"0","b":"0","c":""}'; var obj : Object = JSON.decode(str);
?好了,
?
再改一下:
var str : String = '{"a":0,"b":2,"c":3}'; var obj : Object = JSON.decode(str);
?也没报错
?
唉,看到了吧,对象属性名一定要是大引号,不然,嘿嘿,
字符串也要小引号包含大引号的形式,不然就会报错。
要找原因,可参见源代码,我是没时间看它了。
?