基本數據類型,拷貝是直接拷貝變量的值,而引用類型拷貝的實際上是變量的地址
而淺拷貝和深拷貝就是在這個基礎之上作的區分,若是在拷貝這個對象的時候,只對基本數據類型進行了拷貝,而對引用數據類型只是進行了引用的傳遞,而沒有從新建立一個新的對象,則認爲是淺拷貝。反之,在對引用數據類型進行拷貝的時候,建立了一個新的對象,而且複製其內的成員變量,則認爲是深拷貝
深拷貝spa
let o2 = JSON.parse(JSON.stringify(o1)) function deepCopy(s) { const d = {} for (let k in s) { if (typeof s[k] == 'object') { d[k] = deepCopy(s[k]) } else { d[k] = s[k] } } return d }
淺拷貝
let o2=Object.assign({},o1)code