@Lxyour
2018-09-18T09:01:52.000000Z
字数 744
阅读 909
JavaScript
var shallowCopy = function (obj) {// 只拷贝对象if (typeof obj !== 'object') return;var newObj = obj instanceof Array ? [] : {};for (var key in obj) {if (obj.hasOwnProperty(key)) {newObj[key] = obj[key];}}return newObj;}
function clone(Obj) {var buf;if (Obj instanceof Array) {buf = []; // 创建一个空的数组var i = Obj.length;while (i--) {buf[i] = clone(Obj[i]);}return buf;} else if (Obj instanceof Object){buf = {}; // 创建一个空对象for (var k in Obj) { // 为这个对象添加新的属性buf[k] = clone(Obj[k]);}return buf;}else{return Obj;}}
// 深拷贝var deepCopy = function (obj) {// 只拷贝对象if (typeof obj !== 'object') return;var newObj = obj instanceof Array ? [] : {};for (var key in obj) {if (obj.hasOwnProperty(key)) {newObj[key] = typeof obj[key] === 'object' ? deepCopy(obj[key]) : obj[key];}}return newObj;}var new_arrD = deepCopy(arrC);console.log(new_arrD)