首頁 >web前端 >js教程 >js物件深度克隆實例詳解

js物件深度克隆實例詳解

小云云
小云云原創
2018-03-12 16:23:521615瀏覽

克隆物件在開發過程中常會遇到,有些時候需要淺克隆,有些時候需要深克隆,本文主要和大家分享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