一:前端字符串转JSON的4种方式
1,eval方式解析,恐怕这是最早的解析方式了。
functionstrToJson(str){var json = eval('(' + str + ')');returnjson;
}
2,new Function形式,比较怪异哦。
functionstrToJson(str){var json = (new Function("return " +str))();returnjson;
}
IE6/7中当字符串中含有换行(\n)时,new Function不能解析,但eval却可以。
3,使用全局的JSON对象。
functionstrToJson(str){returnJSON.parse(str);
}
目前IE8(S)/Firefox3.5+/Chrome4/Safari4/Opera10 已实现了该方法。
使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下
var str = '{name:"jack"}';var obj = JSON.parse(str); //--> parse error
name没有用引号引起来,使用JSON.parse所有浏览器中均抛异常,解析失败。而前两种方式则没问题。
4,Jquery插件支持的转换方式
$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象
二.Java中字符串转JSON格式