开发中遇到了需要用到深拷贝的情况直接说结果吧
简单说一下区别
浅拷贝拷贝一层
深拷贝拷贝全部
非深拷贝全部都是浅拷贝
深拷贝:
本人认为最简单的是使用 JSON.stringify和JSON.parse()
缺点不可拷贝undefined , function, RegExp等数据
var arr = [{a:1,b:{c:2}}]
var arr2 = JSON.parse(JSON.stringify(arr)) //[{a:1,b:{c:2}}]
arr[0].b.c=999 //[[{a:1,b:{c:999}}]]
console.log(arr2) //[{a:1,b:{c:2}}]
对象也是如此
另一种是使用递归来拷贝,技术有限就不献丑了