給這段JavaScript代碼:Javascript - 如何清空底層參考?
this.underlyingReference = {name: 'joe'};
this.nullMe(this.underlyingReference);
alert(this.underlyingReference.name);
function nullMe(variable) {
variable = null;
}
有沒有在Javascript中對我的方式爲空this.underlyingReference使用「變量」?我希望能夠清空變量並將底層引用清空,而不是簡單地將引用引用爲空。
我已閱讀過關於Javascript的通過引用功能的文章,如http://snook.ca/archives/javascript/javascript_pass,但它看起來好像當你想銷燬底層引用時,行爲並不是我期望從引用中得到的結果。
當執行通過第二行代碼時,我想「this.underlyingReference」被清除。然而,警戒線顯示底層引用仍然存在並且踢腿。
JavaScript總是按價值傳遞。令人困惑的是,有時候這個價值是一個參考。 –
@MattGreer:任何對象(這是相當多的)通過引用傳遞。 – jAndy
通過值傳遞對象的引用。 –