下面这句话,会直接将Controller返回的json串,直接解析成json对象,不需要二次解析
$.ajax({
type: ‘post‘,
dataType: ‘json‘,
url: ctx + ‘/login/purchaseList?memberId=‘ + memberId,
success: function(data) {
if (0 == data.status) {
alert(‘没有数据 !‘);
} else {
var purchaseArr = data.jsonValue;
for (var i = 0; i < purchaseArr.length; i ++) {
alert(purchaseArr[i].product_name);
}
}
}
});
@ResponseBody
@RequestMapping("/purchaseList")
public String purchaseList(ModelAndView mav, long memberId) {
String purchaseListStr = rDubboProPurchaseService.findMemberPurchase(memberId);
return purchaseListStr;
}
1)第一种方法
data是json串
var dataObj=eval("("+data+")");//转换为json对象
var jsonObj = eval(‘(‘ + data + ‘)‘);
var result = jsonObj.result;
var memberId = jsonObj.memberId;
2)第二种方法
解析方式就是使用Function对象来完成,它的典型应用就是在JQUERY中的AJAX方法下的success等对于返回数据data的解析
var json=‘{"name":"CJ","age":18}‘;
data =(new Function("","return "+json))();
此时的data就是一个会解析成一个 json对象了.