摘要:深拷貝和淺拷貝的區別深拷貝和淺拷貝的使用場景是在復雜對象里,即對象的屬性還是對象,淺拷貝是指只復制一層對象,當對象的屬性是引用類型時,實質復制的是其引用,當引用指向的值改變時也會跟著變化深拷貝對象淺拷貝,只第一層的屬性值,如果屬性值是對象,
深拷貝和淺拷貝的區別:深拷貝和淺拷貝的使用場景是在復雜對象里,即對象的屬性還是對象,
淺拷貝是指只復制一層對象,當對象的屬性是引用類型時,實質復制的是其引用,當引用指向的值改變時也會跟著變化
//深拷貝對象 function deepCopy(value){ if(typeof value != "object"){ return value; } let o = value.constructor == Array ? [] :{}; if(o instanceof Array){ for(let key of Object.keys(value)){ o[key] = deepCopy(value[key]); } }else{ for(let i in value){ o[i] = deepCopy(value[i]); } } return o; } let a=[11,[2,3,[4]],5,7,[9]]; let b = { a:{g:6}, b:1, c:{ d:{ e:4 }, f:5 } } let c = deepCopy(a); let d = deepCopy(b); //淺拷貝,只copy第一層的屬性值,如果屬性值是對象,則復制的是這個對象的引用。 function shallowCopy(src) { var dst = {}; for (var prop in src) { if (src.hasOwnProperty(prop)) { dst[prop] = src[prop]; } } return dst; }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/102395.html
摘要:一篇文章徹底說清的深拷貝淺拷貝這篇文章的受眾第一類業務需要急需知道如何深拷貝對象的開發者。這篇文章分享的目的更多還是希望用一篇文章整理清楚深淺拷貝的含義遞歸實現思路以及小伙伴們如果使用了這種黑科技一定要清楚這樣寫的優缺點。 一篇文章徹底說清JS的深拷貝and淺拷貝 這篇文章的受眾 第一類,業務需要,急需知道如何深拷貝JS對象的開發者。 第二類,希望扎實JS基礎,將來好去面試官前秀操作...
摘要:一篇文章徹底說清的深拷貝淺拷貝這篇文章的受眾第一類業務需要急需知道如何深拷貝對象的開發者。這篇文章分享的目的更多還是希望用一篇文章整理清楚深淺拷貝的含義遞歸實現思路以及小伙伴們如果使用了這種黑科技一定要清楚這樣寫的優缺點。 一篇文章徹底說清JS的深拷貝and淺拷貝 這篇文章的受眾 第一類,業務需要,急需知道如何深拷貝JS對象的開發者。 第二類,希望扎實JS基礎,將來好去面試官前秀操作...
摘要:一篇文章徹底說清的深拷貝淺拷貝這篇文章的受眾第一類業務需要急需知道如何深拷貝對象的開發者。這篇文章分享的目的更多還是希望用一篇文章整理清楚深淺拷貝的含義遞歸實現思路以及小伙伴們如果使用了這種黑科技一定要清楚這樣寫的優缺點。 一篇文章徹底說清JS的深拷貝and淺拷貝 這篇文章的受眾 第一類,業務需要,急需知道如何深拷貝JS對象的開發者。 第二類,希望扎實JS基礎,將來好去面試官前秀操作...
摘要:中的深拷貝與淺拷貝說到深淺拷貝的時候就不得不說一下中的變量類型了基本類型按值存放在棧內存中的簡單數據段可以直接訪問引用類型存放在堆內存中的對象變量保存的是一個指向存放數據位置的指針訪問引用類型的值時首先從棧中獲取到存放該數據位置的指針然后再 JS中的深拷貝與淺拷貝 說到深淺拷貝的時候就不得不說一下JS中的變量類型了: 基本類型: undefined、null、boolean、numb...
摘要:舉個例子來說明一下什么是淺拷貝什么是深拷貝淺拷貝得出的結果可以看出是淺拷貝非對象的屬性值一個改變不影響另一個的值對象屬性是引用賦值所以一個改變會影響另一個的改變出現這種情況的本質是對象是按引用賦值的深拷貝指的是拷貝一個對象,改變一個值不影響 舉個例子來說明一下什么是淺拷貝什么是深拷貝 淺拷貝 var x = { a: 1, b: {f: { g: 1 ...
摘要:基本數據類型的復制很簡單,就是賦值操作,所以深淺拷貝也是針對,這類引用類型數據。它會拋棄對象的。另外,查資料過程中還看到這么一個詞結構化克隆算法還有這一篇資料也有參考,也寫得比較詳細了的深淺拷貝 基本數據類型的復制很簡單,就是賦值操作,所以深淺拷貝也是針對Object,Array這類引用類型數據。 淺拷貝對于字符串來說,是值的復制,而對于對象來說則是對對象地址的復制;而深拷貝的話,它不...
閱讀 2908·2021-11-23 09:51
閱讀 1554·2021-11-15 11:36
閱讀 3013·2021-10-13 09:40
閱讀 1894·2021-09-28 09:35
閱讀 13075·2021-09-22 15:00
閱讀 1372·2019-08-29 13:56
閱讀 2929·2019-08-29 13:04
閱讀 2702·2019-08-28 18:06