js記憶體回收機制
Javascript語言有自己的一套記憶體回收機制,一般情況下區域性變數和物件使用完就會被系統自動回收,無需我們理會。但是碰到閉包的情況這些變數和物件是不會被回收的,對於普通的web站點,頁面重新整理或跳轉這些記憶體也會被回收。如果是單頁web站點,頁面切換及資料請求都是透過ajax無重新整理機制實現的,頁面資源無法自動回收,時間長了會嚴重影響效能,造成記憶體洩漏甚至頁面崩潰直接退出,這時候手動釋放不用資源就非常必要了,包含刪除dom、釋放物件等
想手動釋放含有閉包的物件時,必須先將引用物件屬性的事件刪除,然後設定為null方可消耗物件。這種事件一般是可以多次執行的,如原生事件的監聽,定時器。一般比較有名較完善的外掛都有帶銷燬資源方法,如iscroll外掛,裡面就有一個destroy原型方法,它裡面也就是移除事件監聽和刪除定時器。大家可以去看看原始碼
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4692/viewspace-2817120/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux記憶體回收機制Linux記憶體
- Java的記憶體回收機制Java記憶體
- 圖解Java記憶體回收機制圖解Java記憶體
- js垃圾回收機制和引起記憶體洩漏的操作JS記憶體
- jvm:記憶體模型、記憶體分配及GC垃圾回收機制JVM記憶體模型GC
- [Android]Dalvik記憶體回收機制Android記憶體
- JVM記憶體回收機制——哪些記憶體需要被回收(JVM學習系列2)JVM記憶體
- Java記憶體模型,垃圾回收機制,常用記憶體命令及工具Java記憶體模型
- javascript的垃圾回收機制和記憶體管理JavaScript記憶體
- V8記憶體管理及垃圾回收機制記憶體
- JVM記憶體管理和垃圾回收機制介紹JVM記憶體
- JS垃圾回收機制筆記JS筆記
- Redis的記憶體回收機制和記憶體過期淘汰策略詳解Redis記憶體
- [譯] 通過垃圾回收機制理解 JavaScript 記憶體管理JavaScript記憶體
- Android 作業系統的記憶體回收機制Android作業系統記憶體
- js垃圾回收機制JS
- JavaScript 記憶體機制JavaScript記憶體
- JS高程中的垃圾回收機制與常見記憶體洩露的解決方法JS記憶體洩露
- Node的垃圾回收機制與記憶體溢位捕獲(上)記憶體溢位
- Javascrip高程中的垃圾記憶體回收制(6)Java記憶體
- 深入理解JVM記憶體回收機制(不包含垃圾收集器)JVM記憶體
- java基礎(一):談談java記憶體管理與垃圾回收機制Java記憶體
- 你必須瞭解的java記憶體管理機制(四)-垃圾回收Java記憶體
- 從Java垃圾回收機制窺探記憶體優化(增強版)Java記憶體優化
- JVM記憶體分配機制與回收策略選擇-JVM學習筆記(2)JVM記憶體筆記
- javaScript 記憶體管理機制JavaScript記憶體
- Java記憶體管理機制Java記憶體
- 【AIX】AIX記憶體機制AI記憶體
- linux記憶體機制Linux記憶體
- Qt 記憶體管理機制QT記憶體
- jvm記憶體管理機制JVM記憶體
- 深入js基礎:從記憶體機制、解析機制到執行機制(長文預警)JS記憶體
- 剖析 Python 面試知識點(二)- 記憶體管理和垃圾回收機制Python面試記憶體
- GVM回收機制-筆記筆記
- 記憶體回收介紹記憶體
- Qt 記憶體管理機制薦QT記憶體
- linux記憶體管理機制Linux記憶體
- [譯] JavaScript如何工作:垃圾回收機制 + 常見的4種記憶體洩漏JavaScript記憶體