文章詳情頁
javascript - 數(shù)組賦值問題
瀏覽:106日期:2023-04-08 13:25:25
問題描述
為什么把a(bǔ)rr的值賦值arrnew,為什么arr改變arrnew也會跟著改變?如果希望arrnew得到arr的數(shù)據(jù)后,不跟著arr后面的操作要怎么寫?let arr=[1,2,3,4,5]let arrnew=arrarr=arr.sort((a,b)=>{return b-a})console.log(arr)//[5, 4, 3, 2, 1]console.log(arrnew)//[5, 4, 3, 2, 1]
問題解答
回答1:數(shù)組也是屬于對象,屬于引用類型,當(dāng)進(jìn)行賦值時(shí),賦值的是地址,并不會克隆一個(gè)新對象進(jìn)行賦值。
sort會改變原數(shù)組
綜上兩點(diǎn),改變arr自然會改變arrnew
回答2:let arrnew = arr.slice()
回答3:這篇文章對你有很大幫助!click me
回答4:你對arrnew的賦值只是地址的引用。
如果要復(fù)制數(shù)組,可以使用擴(kuò)展運(yùn)算符,如下:
let arrnew = [...arr];
標(biāo)簽:
JavaScript
相關(guān)文章:
1. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實(shí)現(xiàn)存在即更新應(yīng)該使用哪個(gè)標(biāo)簽?2. mysql - 怎么生成這個(gè)sql表?3. mysql儲存json錯(cuò)誤4. 哭遼 求大佬解答 控制器的join方法怎么轉(zhuǎn)模型方法5. mysql - 表名稱前綴到底有啥用?6. Navicat for mysql 中以json格式儲存的數(shù)據(jù)存在大量反斜杠,如何去除?7. 編輯成功不顯示彈窗8. 怎么php怎么通過數(shù)組顯示sql查詢結(jié)果呢,查詢結(jié)果有多條,如圖。9. mysql - 數(shù)據(jù)庫表中,兩個(gè)表互為外鍵參考如何解決10. sql語句 - 如何在mysql中批量添加用戶?
排行榜

熱門標(biāo)簽