javascript 序列化与反序列化, 对象拷贝,深拷贝,浅拷贝方式.

在java 里面有浅拷贝,深拷贝对象,在javascript 里面同样也有类似的问题, 当我们得到一个js 对象a, 并将其拷贝到对象b中,我们改变b对象里面参数的时候,你会发现 原来a 里面的也跟着改变了,这是我们不想看到的情况. 说白了,这两个对象指向的是同一个引用。 也就是类似浅拷贝,深拷贝的问题。

在js 中的解决方法,其实很简单,说白了,就是利用序列化,反序列化的方式来实现。 将一个对象序列化成字符串,然后将这个字符串再反序列化成对象,这个时候,这个新的对象和原来那个对象除了值一样之外,一点关系都没有,这种方式就能实现 js 的深拷贝.

比如b是源对象,用这个方法就可以实现了
程序代码 程序代码

var cloneObj = JSON.parse(JSON.stringify(b));


除非申明,文章均为一号门原创,转载请注明本文地址,谢谢!
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.