例如后台返回的内容保存在变量json
json
=
'{
data:
"string"
}'
//
字符串形式的json数据
object
=
eval(
'('+
json
+
')'
)
//
这样的到的object就是{
data
:
'string'
}
通常都是用eval()函数来进行转换的,例如:varsJson
=
'{a:
1}'var
o
=
eval('('
+
sJson
+
')')alert(o.a)如果是数组的话,也是类似的,在字符串两边各加上一个小括号,然后用eval()函数将其转换为数组,再赋值给某个变量,就可以直接使用了。
commons-collections-3.2.jarcommons-lang.jarcommons-logging-1.1.jarezmorph-1.0.4.jar这时在测试得到了想要的结果Question q2 = new Question()q2.setId(2)q2.setDescription(descrsssss)q2.setPointInfo(pointkkkk)q2.setType(3)Question q1 = new Question()q1.setId(1)q1.setDescription(descrsssss)q1.setPointInfo(pointkkkk)q1.setType(3)JSONObject jsonObject = new JSONObject().fromObject(q2)System.out.println(jsonObject)List list = new ArrayList()list.add(q1)list.add(q2)JSONArray jsonArr= JSONArray.fromObject(list)System.out.println(jsonArr)输出:{description:descrsssss,id:2,pointInfo:pointkkkk,type:3}[{description:descrsssss,id:1,pointInfo:pointkkkk,type:3},{description:descrsssss,id:2,pointInfo:pointkkkk,type:3}]页面$.post(showQuestions?type=+type,null,callbackShowQuestions,json)这时在回调函数的参数data获得的就是json转换后的js对象数组,以下标方式便可访问数组里的相应对象信息。