// 遞歸實現一個深拷貝
function deepClone(source) {
if (!source || typeof source !== 'object') {
throw new Error('error arguments', 'shallowClone');
}
var targetObj = source.constructor === Array ? [] : {}; //創(chuàng)建一個新的對象來保存拷貝
for (var keys in source) {
if (source.hasOwnProperty(keys)) {
if (source[keys] && typeof source[keys] === 'object') { //如果屬性是對象赘被,遞歸拷貝
targetObj[keys] = source[keys].constructor === Array ? [] : {};
targetObj[keys] = deepClone(source[keys]);
} else { //如果屬性是數據類型,直接復制
targetObj[keys] = source[keys];
}
}
}
return targetObj;
}
遞歸實現深拷貝
?著作權歸作者所有,轉載或內容合作請聯系作者
- 文/潘曉璐 我一進店門窘疮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人冀墨,你說我怎么就攤上這事闸衫。” “怎么了诽嘉?”我有些...
- 正文 為了忘掉前任悦冀,我火速辦了婚禮趋翻,結果婚禮上,老公的妹妹穿的比我還像新娘盒蟆。我一直安慰自己踏烙,他們只是感情好师骗,可當我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著讨惩,像睡著了一般辟癌。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上步脓,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼或颊!你這毒婦竟也來了砸紊?” 一聲冷哼從身側響起,我...
- 正文 年R本政府宣布亡驰,位于F島的核電站,受9級特大地震影響饿幅,放射性物質發(fā)生泄漏隐解。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一诫睬、第九天 我趴在偏房一處隱蔽的房頂上張望煞茫。 院中可真熱鬧,春花似錦、人聲如沸续徽。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽钦扭。三九已至纫版,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間客情,已是汗流浹背其弊。 一陣腳步聲響...
推薦閱讀更多精彩內容
- 深拷貝內存拷貝 淺拷貝指針拷貝 淺拷貝 深拷貝 集合的淺復制 (shallow copy) 集合的淺復制有非常多種...
- 深拷貝和淺拷貝最根本的區(qū)別在于是否是真正獲取了一個對象的復制實體鸠真,而不是引用,深拷貝在計算機中開辟了一塊內存地址用...
- 工作繁忙、生活壓力大的同學們货岭,是不是總希望自己能像打過雞血一樣路操,每天精神滿分∏Ч幔可是現實卻常常無精打采屯仗。 看看下面這...