做的好的家裝網(wǎng)站蘇州網(wǎng)絡(luò)推廣seo服務(wù)
1、深拷貝和淺拷貝的區(qū)別
淺拷貝:淺拷貝是拷貝一層,引用類型共享地址。
如果屬性是基本類型,拷貝的就是基本類型的值。
如果屬性是引用類型,拷貝的就是內(nèi)存地址。
意思是,當(dāng)進(jìn)行淺拷貝時(shí),對(duì)于對(duì)象的每一層屬性,拷貝的過程區(qū)分基本類型和引用類型:
基本類型(如數(shù)字、字符串、布爾值):拷貝的是這些值本身。這意味著在原始對(duì)象和拷貝對(duì)象中,這些基本類型的值是完全獨(dú)立的,對(duì)一方的修改不會(huì)影響到另一方。
引用類型(如對(duì)象、數(shù)組):拷貝的是指向這些引用類型值的內(nèi)存地址,而不是值本身。因此,在原始對(duì)象和拷貝對(duì)象中,這些引用類型屬性實(shí)際上是共享同一塊內(nèi)存區(qū)域的。這就意味著,如果你修改了拷貝對(duì)象中的某個(gè)引用類型的屬性,這個(gè)修改同樣會(huì)影響到原始對(duì)象中的對(duì)應(yīng)屬性,因?yàn)樗鼈冎赶虻氖峭粋€(gè)內(nèi)存位置。
深拷貝: 開辟一個(gè)新的棧,兩個(gè)對(duì)象屬性完全相同,但地址不同,修改其中一個(gè)對(duì)象的屬性,另一個(gè)對(duì)象的屬性不變。