本节介绍在javascript中,JSON对象与JSON字符串是如何相互转换的。接下来请看相关代码:
代码如下:
在前端js对象和json对象的互转:
JS对象转换成为JSON
处理:引用一个json2.js文件,调用JSON.stringify()方法。例如:
代码如下:
var data = new Object();var json_data = JSON.stringify(data);
PS:json2.js这个文件在网上搜一下就能下载到。
JSON转换成为JS
1.处理:用jQuery的一个方法$.parseJSON()将JSON格式的数据转成JS对象。例如:
代码如下:
var json_data = $.getJSON();var data = $.parseJSON(json_data);
(可用来成转换js数组)
2.将json转换成js对象的方法:
代码如下:
var json = eval('(' + result + ')');
通过上面这个表达式,就完成了将服务器端响应给客户端的Json格式的字符串解析成了一个Json(格式的)对象,名称为“json”,通过“json.”或者“json[]”的方式便可进行数据访问。在后台对js对象和json对象的互转:
.NET Framework 4在System.Runtime.Serialization中。利用JavaScriptSerializer类对数据进行序列化和反序列化
示例:
代码如下:
//将param反序列列list集合List _ApplyPart = new JavaScriptSerializer().Deserialize>(param);
jQuery插件支持的转换方式
代码如下:$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象反过来,使用 serialize 系列方法:如:var fields = $("select, :radio").serializeArray();
浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器
代码如下:
JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON.stringify(jsonobj); //可以将json对象转换成json对符串
注:ie8(兼容模式),ie7和ie6没有JSON对象,需要引入 json.js 或 json2.js。
Javascript支持的转换方式
eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。