原因:
數組是引用類型,數組變量存儲在棧,元素數據存儲在堆中,將數組賦值不同的對象,所以的賦值對象都指向堆同一個數據,所以改變其中一個數組中的元素,別的數組元素也會改變。
解決方案:
原理就是先把數組轉換成字符串再轉換成對象 ,這樣會新分配一塊內存,就不會指向同一個堆中的數據。
例子1: var tmp = JSON.parse(JSON.stringify(array));
原因:
數組是引用類型,數組變量存儲在棧,元素數據存儲在堆中,將數組賦值不同的對象,所以的賦值對象都指向堆同一個數據,所以改變其中一個數組中的元素,別的數組元素也會改變。
解決方案:
原理就是先把數組轉換成字符串再轉換成對象 ,這樣會新分配一塊內存,就不會指向同一個堆中的數據。
例子1: var tmp = JSON.parse(JSON.stringify(array));
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。