說我做一個對象,將其複製(如附圖),然後廢掉它:爲什麼重新分配時不會將此對象複製爲空?
let obj = {
prop: 'one'
}
let otherObj = obj
console.log(otherObj === obj); //true
console.log(obj.prop); //one
obj = null;
console.log(otherObj.prop); //shouldn't this be Uncaught TypeError: Cannot read property 'prop' of null"?
不宜otherObj
也爲空,因爲它們是同一個對象?
不,你只是改變var指向的內容,而不是目標本身。如果你修改了這個對象,兩個變量都會反映出來。把第二個var作爲別名;你刪除了暱稱,而不是該人。 – dandavis