我應該將每個data()調用與稍後的removeData()調用配對嗎?我的假設:jQuery的remove()將從DOM中移除元素,如果我沒有任何其他的移除引用,我不必再進行更多的清理。但是,如果我有一些JavaScript var或對象引用了其中一個被刪除的元素,我需要清理它,並且我假設也適用於jQuery的數據函數,因爲它是以某種方式引用元素。我應該用jQuery的數據()注意什麼樣的內存泄漏?
因此,如果我確實需要在刪除之前調用removeData,是否有快捷方式刪除與某個元素相關的所有數據,或者是否必須按名稱明確地調用它們?
編輯:我查看了源代碼並確認了Borgar和roosteronacid說的。 Remove從dom中取出元素並刪除與它們一起存儲的任何事件和數據 - 這很方便,但讓我想知道何時使用removeData()。可能不經常。
讀者應該注意,這隻有在使用jQuery的`.remove()`方法時纔是安全的,這會導致存儲的數據被清理乾淨。如果你自己從DOM中刪除元素,jQuery不會知道清理它,並且在頁面關閉之前你將會有泄漏。 – 2012-07-10 20:42:06