浏览 5000 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-08-22
啥也不说了,再次说明用别人的东西一定要小心,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); 也没报错
唉,看到了吧,对象属性名一定要是大引号,不然,嘿嘿, 字符串也要小引号包含大引号的形式,不然就会报错。 要找原因,可参见源代码,我是没时间看它了。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-02-09
我也遇到过同样的问题。不过没办法,用人家的东西就这样,得遵循别人的规则。
但在decode的时候,必须要try catch。 |
|
返回顶楼 | |