javascript中数据的序列化与反序列化

首页 » 技术栈 » javascript中数据的序列化与反序列化

标签的自定义属性是个非常有用的技巧,不但可以用它来保存普通字符串,还可以保存其他类型的数据,如对象、数组。因为属性只是字符串类型,即使将它的形式设置成对象或数组,但它仍是字符串。如果我们想将对象或数组等数据保存到属性,就需要数据的反序列化。那么什么是数据的序列化与反序列化?

数据的序列化,指的是将复杂类型的数据转化成字符串的操作过程,而其逆向操作则是数据的反序列化。

一、序列化:对象或数组转化为字符串

1)toJSONString方法

var last=obj.toJSONString(); //将JSON对象转化为JSON字符

2)stringify方法

var last=JSON.stringify(obj); //将JSON对象转化为JSON字符

二、反序列化:字符串转化为对象或数组

数据的反序列化,最经典的应用当属Ajax。Ajax支持的json格式,选择返回数据为字符串,但让这个字符串形式像hash对象或数组,将返回数据进行反序列化,得到真正的hash对象或数组。

反序列化使用eval、parseJSON及parse三种方式。

1.eval

var obj=eval("("+data+")");

其中eval这里要添加 "("+data+");//”的原因在于eval本身。由于json是以”{}”的方式来开始以及结束的,在javascript中,它会被当成一个语句块来处理,所以必须强制性的将它转换成表达式。

2.parseJSON

var obj = data.parseJSON(); //由JSON字符串转换为JSON对象

3.parse

var obj = JSON.parse(data); //由JSON字符串转换为JSON对象

打赏 赞(0)
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏

大家好!欢迎光临我的博客,在下就是闭月羞花沉鱼落雁才高八斗貌似天仙玉树凌风赛潘安一枝梨花压海棠人送外号上天下地无所不能美貌与智慧并存、古典与活泼的化身~~
觅·You小栈» javascript中数据的序列化与反序列化

版权声明: 本站原创文章,于2016年05月15日由觅·You发布,转载请注明出处

亭边总有花影,与我消遣一段旖旎的小时光

立即查看 联系作者
正在获取,请稍候...
00:00/00:00