2010-01-18 211 views
3

請原諒我的問題,如果它沒有多大意義。JavaScript對象刪除

我正在使用javascript來創建一個dom元素 來做到這一點,我創建一個對象(obj ={})並填寫我去的屬性,其中之一是要創建的dom元素。一旦元素被創建並附加到文檔中,我不需要該對象佔用內存中的任何空間,所以我想我應該刪除它。 我將如何去做呢? 謝謝

回答

3

對象的要在內存後就存在,因爲它是在DOM和保持它真正持有對它的引用,而不是一個obj屬性複製。所以據我所知,保持引用作爲obj屬性所需的內存應該可以忽略不計。在這種情況下,我根本不用擔心刪除它。

+0

如果你'使用jQuery插件,如[DataTables](http://www.datatables.net),那麼它**確實很重要:例如,如果您打算重新初始化這樣的表,那麼沒有乾淨的方法可以做它。如果你對更多細節感興趣,請參閱[這裏](http://datatables.net/forums/discussion/1244/how-to-re-initialize-a-datatable-reload-it-from-scratch/p1)這個控制和卸載它的問題。 – Matt 2013-06-17 08:54:14

3

這裏是如何:

my_var = null; 

//or remove it 
delete my_var; 
+0

如果該對象僅在函數中被「this」引用,該怎麼辦? '刪除此'似乎不起作用 – salmane 2010-01-18 10:15:26

+0

我不確定他是否提及過,如果它是由此引用的。 – Sarfraz 2010-01-18 10:21:36

+0

我不認爲你可以從一個成員函數中刪除一個對象。保留對其的引用並將其在其他地方刪除 – 2010-01-18 10:21:51

0

如果定義你對象像

VAR OBJ = {}

它會自動在函數的末尾未定義區域設置。