js eval方法解析java后台传来的json字符串
来源:互联网 发布:中拓互联 中文域名 编辑:程序博客网 时间:2024/05/01 17:40
在前端做图表展示时,往往会遇到后台传来的一大串数据,一般要转成数组形式,在前端展示,特别是百度的Echarts!这里使用eval解决此问题。
对于服务器返回的JSON字符串,如果POST请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,方式不是太麻烦,就是将该字符串放于eval()中执行一次。这种方式也适合以普通javascipt方式获取json对象,以下举例说明:
var dataObj=eval("("+data+")");//转换为json对象</span>
在 eval这里要添加 “("("+data+")");的原因是 由于json是以”{}”的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式。
不废话了,写个具体demo如下
代码主要由实体类TestBean、SpringMvc控制类Test、前端jsp文件index.jsp
前端jsp
function test(){
vara="names";
varb="ids";
$.post(path +"/Test/test.do",{
a:a,
b:b
},function(data,status){
alert(data);
varjson = eval("("+data+")");
alert(json.ids);
alert(json.names);
/* $.each(json,function(i,n){
alert(json[i].name+" "+json[i].value);
alert(n.name+" "+n.value);
}); */
});
}
控制类
@Controller
@RequestMapping("/Test")
public class Test {
@RequestMapping("/test.do")
publicvoid test(String a,String b,HttpServletResponse response) throws IOException {
Logi.logWarn("test",a+b);
TestBean testBean = new TestBean();
for(inti = 0;i<20;i++)
testBean.ids.add("id"+i);
for(inti = 0;i<20;i++)
testBean.names.add("name"+i);
JSONObject jsonObject = JSONObject.fromObject(testBean);
Logi.logWarn("test",jsonObject.toString());
response.getWriter().write(jsonObject.toString());
return ;
}
}
实体类
public class TestBean {
public ArrayList<String>names = new ArrayList<String>();
public ArrayList<String>ids = new ArrayList<String>();
public ArrayList<String> getNames() {
returnnames;
}
publicvoid setNames(ArrayList<String> names) {
this.names =names;
}
public ArrayList<String> getIds() {
returnids;
}
publicvoid setIds(ArrayList<String> ids) {
this.ids =ids;
}
@Override
public String toString() {
return"TestBean [names=" + names +", ids=" + ids +"]";
}
}
- js eval方法解析java后台传来的json字符串
- js遍历java后台传来的list方法
- 从服务器传来的json,为什么要用eval()转,难道js不能解析原生的json吗
- eval对后台传来的数据处理
- JavaScript >AjaxFileUpload插件无法解析后台传来的json数据
- js中解析字符串-eval()和JSON()
- java如何解析传来的xml字符串
- eval解析json字符串
- 解析json字符串:eval
- js eval 解析json
- java后台解析json字符串
- 用Js的eval解析JSON
- 用Js的eval解析JSON
- 用Js的eval解析JSON
- 用Js的eval解析JSON
- js解析json的eval函数
- 用Js的eval解析JSON用法
- java后台JSON解析前台传入的数组JSON字符串
- No unique bean of type [ *.service.*Service] is defined
- 我要如此改造HR部门!你呢?
- CSS 框模型和定位
- MVC使视图不使用布局或模板页
- bug之空间不足
- js eval方法解析java后台传来的json字符串
- How to Recreate The AWR ( AUTOMATIC WORKLOAD ) Repository ?
- 刚切换就让PullToRefreshListView呈现下拉状态刷新
- TCP 的那些事儿(转载)
- c语言的多文件开发
- 安卓系统学习--获取Google安卓系统源码
- Ubuntu下创建快捷方式(以myeclipse为例)
- Android APP: BlackContact 短信拦截
- WSOP欧洲赛在德国柏林开战