本文介绍: 进行深拷贝的方法:递归函数 (推荐使用,项目中使用的更多,更小,更安全)JSON.stringify() 和JSON.parse();(不推荐使用,如果遇到Function,Date等类型的变量容易出现一些意料之外的问题)第三方库lodash的cloneDeep()方法JQuery的extend()函数 (推荐在JQuery项目中使用,其他项目依然推荐是用递归函数)到此这篇关于JS实现深拷贝的4种方式的文章就介绍到这了,希望可以帮到你!微点阅读。
本文主要给大家介绍了关于JS实现深拷贝的4种方式,深拷贝是指将一个对象完整地拷贝一份,不受原对象影响,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
概念
深拷贝:在堆内存中重新开辟一个存储空间,完全克隆一个一模一样的对象;
浅拷贝:不在堆内存中重新开辟空间,只复制栈内存中的引用地址。
本质上两个对象(数组)依然指向同一块存储空间在这里插入代码片
1、递归方式(推荐,项目中最安全最常用)
2、JSON.stringify() ;(这个不推荐使用,有坑)
3、使用第三方库lodash中的cloneDeep()方法
4、jquery的extend()方法进行深拷贝(推荐在JQ中使用)
总结:
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。