首页 >web前端 >js教程 >js对象深度克隆实例详解

js对象深度克隆实例详解

小云云
小云云原创
2018-03-12 16:23:521609浏览

克隆对象在开发过程中经常会遇到,有些时候需要浅克隆,有些时候需要深克隆,本文主要和大家分享js对象深度克隆实例详解,希望能帮助到大家。

// 深度克隆
function deepClone(origin, target) {
var target = target || {};
for (var prop in origin) {
if (origin.hasOwnProperty(prop)) {
if (origin[prop] !== null && typeof origin[prop] === 'object') {
target[prop] = Object.prototype.toString.call(origin[prop]) === '[object Array]'? [] : {};
deepClone(origin[prop], target[prop]);
} else {
target[prop] = origin[prop]
}
}
}
}
var obj = {
name: 'name',
arr: [1, 2, 3],
obj: { a: 'a' },
f: function () {
}
}
var obj1 = {};
deepClone(obj, obj1)
console.log(obj1)

相关推荐:

一行代码实现纯数据json对象的深度克隆实现思路_javascript技巧

JavaScript对象之深度克隆介绍_javascript技巧

克隆对象的方法实例教程

以上是js对象深度克隆实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn