html字符串转换成json对象,javascript中JSON对象与JSON字符串相互转换实例

本节介绍在javascript中,JSON对象与JSON字符串是如何相互转换的。接下来请看相关代码:

代码如下:

var obj = new Object();

obj.Name = "八戒"

obj.Age = 500;

//通过字面量的形式来定义对象

var obj1 = { "Name": "八戒", "Age": "500" };

var arr = [{ "Name": "八戒", "Age": "500" }, { "Name": "八戒1", "Age": "1000" }];

//JSON格式:将json的字面量表示形式,当做字符串存放,则为json格式字符串

var str = '{ "Name": "八戒", "Age": "500" }';

var jsonstrarr = '[{ "Name": "八戒", "Age": "500" }, { "Name": "八戒1", "Age": "1000" }];';

//将json字符串转换成js对象(数组)

var resobj = JSON.parse(str);

alert(resobj.Name);

在前端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串中的表达式。

JSON官方的转换方式http://www.json.org/,提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值