深拷貝和淺拷貝區別及概念

數據類型分爲兩種基礎類型和引用類型: 1、基礎類型:像Number、String、Boolean等這種爲基本類型 2、引用類型:Object和Array 淺拷貝只是複製了對象的引用地址,兩個對象指向同一個內存地址,所以修改其中任意的值,另一個值都會隨之變化,這就是淺拷貝(例:assign()) 深拷貝是將對象及值複製過來,兩個對象修改其中任意的值另一個值不會改變,這就是深拷貝(例:JSON.parse()和JSON.stringify(),但是此方法無法複製函數類型) 當你需要深拷貝對象中的方法時是可以用lodash.js(提高JS原生方法性能的JS庫)中的cloneDeep()方法 <script type="text/javascript"> var objA = { "name": "戈德斯文" }; var objB =lodash.cloneDeep(objA); </script>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章