核心提示:js将字符串转换成json的三种方式:1,js自带的eval函数,其中需要添加小括号eval((+str+));。function strToJson(str){var json = eval(( +...
js将字符串转换成json的三种方式:1,js自带的eval函数,其中需要添加小括号eval('('+str+')');。
function strToJson(str){ var json = eval('(' + str + ')'); return json; } 2,new Function形式 function strToJson(str){ var json = (new Function("return " + str))(); return json; } 3,全局的JSON对象 function strToJson(str){ return JSON.parse(str); } 使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下 代码如下: var str = '{name:"jack"}'; var obj = JSON.parse(str); // --> parse error name没有用引号引起来,使用JSON.parse所有浏览器中均抛异常,解析失败。 补充:如果是在java中就好办了,根本用不上JsonObcjec之类,牛人都是用String拆分和拼凑 相关知识, JSONObject 构造方法如下: JSONObject();创建一个空的JSONObject对象 JSONObject(boolean isNull);创建一个是否为空的JSONObject对象 普通方法如下: fromBean(Objectbean);静态方法,通过一个pojo对象创建一个JSONObject对象 fromJSONObject(JSONObjectobject);静态方法,通过另外一个JSONObject对象构造一个JSONObject对象 fromJSONString(JSONStringstring);静态方法,通过一个JSONString创建一个JSONObject对象 toString();把JSONObject对象转换为json格式的字符串 iterator();返回一个Iterator对象来遍历元素 JSONArray:A JSONArray is anorderedsequence of values. 是一个final类,继承了Object,实现了JSON接口 构造方法如下: JSONArray();构造一个空的JSONArray对象 普通方法如下: fromArray(Object[] array);静态方法,通过一个java数组创建一个JSONArray对象 fromCollection(Collectioncollection);静态方法,通过collection集合对象创建一个JSONArray对象 fromString(Stringstring);静态方法,通过一个json格式的字符串构造一个JSONArray对象 toString();把JSONArray对象转换为json格式的字符串 iterator();返回一个Iterator对象来遍历元素