文章詳情頁
javascript - 數(shù)組賦值問題
瀏覽:206日期: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)行賦值時,賦值的是地址,并不會克隆一個新對象進(jìn)行賦值。
sort會改變原數(shù)組
綜上兩點,改變arr自然會改變arrnew
回答2:let arrnew = arr.slice()
回答3:這篇文章對你有很大幫助!click me
回答4:你對arrnew的賦值只是地址的引用。
如果要復(fù)制數(shù)組,可以使用擴(kuò)展運算符,如下:
let arrnew = [...arr];
標(biāo)簽:
JavaScript
相關(guān)文章:
1. nignx - docker內(nèi)nginx 80端口被占用2. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””3. 關(guān)于docker下的nginx壓力測試4. docker - 各位電腦上有多少個容器啊?容器一多,自己都搞混了,咋辦呢?5. mac里的docker如何命令行開啟呢?6. docker容器呢SSH為什么連不通呢?7. docker start -a dockername 老是卡住,什么情況?8. javascript - 連續(xù)點擊觸發(fā)mouseleave事件9. docker gitlab 如何git clone?10. macos - mac下docker如何設(shè)置代理
排行榜

熱門標(biāo)簽
網(wǎng)公網(wǎng)安備