久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - Object.assign() 深拷貝和淺拷貝的問題

瀏覽:138日期:2023-05-05 17:16:33

問題描述

javascript - Object.assign() 深拷貝和淺拷貝的問題

如上圖,據描述,Object.assign()為淺拷貝, 為什么改變屬性a不是指向同一個引用,而b.c指向了同一個引用?

問題解答

回答1:

var deepCopy = function(src) { var ret = {} for (var k in src) {ret[k] = typeof src[k] ===’object’ ? deepCopy(src[k]) : src[k] } return ret}

深拷貝一直用這個方法, Object.assgin 只能深拷貝第一層, 深層的還是淺拷貝, 記住這個就行了

回答2:

let obj3 = Object.assign({},obj1,{b:Object.assign({},obj1.b)});let obj4 = JSON.parse(JSON.stringify(obj1));回答3:

淺拷貝:如果屬性元素為復雜雜數據類型時,內層元素拷貝引用;slice, concat, jQury的$.extend({},obj)都是淺拷貝;點擊這里了解詳情

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 新疆| 临汾市| 额济纳旗| 松江区| 鹤峰县| 茌平县| 泗水县| 丰城市| 台江县| 惠东县| 疏勒县| 宜川县| 德格县| 合肥市| 金山区| 沙坪坝区| 商丘市| 深泽县| 城步| 巴南区| 香港 | 榆树市| 三亚市| 嫩江县| 夏河县| 铜鼓县| 高要市| 绥阳县| 离岛区| 大庆市| 北安市| 曲阳县| 怀仁县| 阜宁县| 松阳县| 平阳县| 克东县| 吉木萨尔县| 泰兴市| 称多县| 慈溪市|