摘要:雖然自己知道數(shù)組和對(duì)象是引用類(lèi)型,在賦值的時(shí)候要小心,但是今天還是翻了個(gè)錯(cuò),所以再次寫(xiě)了個(gè)幫助自己眾所周知,數(shù)組就是引用類(lèi)型的為了防止被改變,所以我們要拷貝一份我天真地以為數(shù)組再拷貝一份就不會(huì)出現(xiàn)中的情況了,那么,如果數(shù)組里面的元素是對(duì)象呢
雖然自己知道數(shù)組和對(duì)象是引用類(lèi)型,在賦值的時(shí)候要小心,但是今天還是翻了個(gè)錯(cuò),所以再次寫(xiě)了個(gè)demo幫助自己:
1、眾所周知,數(shù)組就是引用類(lèi)型的
2、為了防止arr1被改變,所以我們要拷貝一份
3、我天真地以為數(shù)組再拷貝一份就不會(huì)出現(xiàn)1中的情況了,那么,如果數(shù)組里面的元素是對(duì)象呢?(對(duì)象也是引用類(lèi)型)
4、所以要把a(bǔ)rr1徹底拷貝出來(lái),包括元素里的對(duì)象(這里我們使用jQuery的extend()方法)
最后順便回顧一下extend方法的用法:extend(deep, targetObj, sourceObj);
(1)、淺拷貝 deep默認(rèn)為false,targetObj為obj1
(2)、深拷貝 deep為true,targetObj為新建的{}
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/91785.html
摘要:原理判斷左邊的左操作數(shù)的對(duì)象的原型鏈上是否有右邊這個(gè)構(gòu)造函數(shù)的屬性。每個(gè)對(duì)象都有屬性,但只有函數(shù)對(duì)象才有屬性在默認(rèn)情況下,所有的原型對(duì)象都會(huì)自動(dòng)獲得一個(gè)構(gòu)造函數(shù)屬性,這個(gè)屬性是一個(gè)指針指向?qū)傩运诘暮瘮?shù)原型對(duì)象是構(gòu)造函數(shù)的一個(gè)實(shí)例。 JS JavaScript深入淺出 鏈接描述 數(shù)據(jù)類(lèi)型 JS變量按照存儲(chǔ)方式區(qū)分為值類(lèi)型和引用類(lèi)型,并描述其特點(diǎn)?js值類(lèi)型和引用類(lèi)型的區(qū)別 值類(lèi)型...
摘要:對(duì)象是的基本塊。和明紅明可以看到改變并沒(méi)有改變?cè)紝?duì)象,實(shí)現(xiàn)了基本的深拷貝。和能正確處理的對(duì)象只有等能夠被表示的數(shù)據(jù)結(jié)構(gòu),因此函數(shù)這種不能被表示的類(lèi)型將不能被正確處理。 對(duì)象介紹 js中包含兩種不同數(shù)據(jù)類(lèi)型的值: 基本類(lèi)型值和引用類(lèi)型值。 基本類(lèi)型值指的是簡(jiǎn)單的數(shù)據(jù)段,而引用類(lèi)型值指的是那些由可能由多個(gè)值構(gòu)成的對(duì)象。 js對(duì)象都是引用類(lèi)型,對(duì)象是某個(gè)特定引用類(lèi)型的實(shí)例。對(duì)象是js的基本...
摘要:深拷貝相比于淺拷貝速度較慢并且花銷(xiāo)較大。所以在賦值完成后,在棧內(nèi)存就有兩個(gè)指針指向堆內(nèi)存同一個(gè)數(shù)據(jù)。結(jié)果如下擴(kuò)展運(yùn)算符只能對(duì)一層進(jìn)行深拷貝如果拷貝的層數(shù)超過(guò)了一層的話(huà),那么就會(huì)進(jìn)行淺拷貝那么我們可以看到和展開(kāi)原算符對(duì)于深淺拷貝的結(jié)果是一樣。 JS中數(shù)據(jù)類(lèi)型 基本數(shù)據(jù)類(lèi)型: undefined、null、Boolean、Number、String和Symbol(ES6) 引用數(shù)據(jù)類(lèi)型:...
摘要:好久沒(méi)寫(xiě)文章了,都感覺(jué)自己最近沒(méi)什么進(jìn)步啊,正愁不知道寫(xiě)什么呢,這兩天的工作中偶然發(fā)現(xiàn)一個(gè)數(shù)組深拷貝的問(wèn)題,正好可以拿出來(lái)說(shuō)一說(shuō)。難道之前我們對(duì)數(shù)組的深拷貝都被騙了。。。對(duì)于字符串?dāng)?shù)字及布爾值來(lái)說(shuō)不是或者對(duì)象,會(huì)拷貝這些值到新的數(shù)組里。 好久沒(méi)寫(xiě)文章了,都感覺(jué)自己最近沒(méi)什么進(jìn)步啊,正愁不知道寫(xiě)什么呢,這兩天的工作中偶然發(fā)現(xiàn)一個(gè)js數(shù)組深拷貝的問(wèn)題,正好可以拿出來(lái)說(shuō)一說(shuō)。 拋出問(wèn)題 co...
摘要:基本數(shù)據(jù)類(lèi)型在中,基本數(shù)據(jù)類(lèi)型有種,即數(shù)值字符串布爾值。兩個(gè)布爾值轉(zhuǎn)為數(shù)值進(jìn)行比較。對(duì)于對(duì)象和布爾值,調(diào)用它們的方法得到對(duì)應(yīng)的字符串值,然后進(jìn)行字符串相加。減法對(duì)于字符串布爾值或者,自動(dòng)調(diào)用,轉(zhuǎn)換結(jié)果若為,那么最終結(jié)果為。 這篇文章,來(lái)聊聊 JS 中的數(shù)據(jù)類(lèi)型與變量。這是在學(xué)習(xí) JS 時(shí)最基礎(chǔ)的一類(lèi)問(wèn)題,但卻很重要。希望我的分享有幫助到你。 文章開(kāi)頭,我先提幾個(gè)面試中遇到的問(wèn)題: 比如...
閱讀 3030·2021-11-24 10:32
閱讀 688·2021-11-24 10:19
閱讀 5135·2021-08-11 11:17
閱讀 1467·2019-08-26 13:31
閱讀 1268·2019-08-23 15:15
閱讀 2293·2019-08-23 14:46
閱讀 2277·2019-08-23 14:07
閱讀 1095·2019-08-23 14:03