天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Javascript內存泄露

  英文原文:JavaScript Memory Leaks

  1. 什么是內存泄露?

  內存泄露是指分配給應用的內存不能被重新分配,即使在內存已經不被使用的時候。正常情況下,垃圾回收器在 DOM 元素和 event 處理器不被引用或訪問的時候回收它們。但是,IE 的早些版本(IE7和之前)中內存泄露是很容易出現的,因為內存管理器不能正確理解 Javascript 生命周期而且在周期被打破(可以通過賦值為 null 實現)前不會回收內存。

  2. 為什么你需要注意它?

  在大型 Web 應用程序中內存泄露是一種常見的無意的編程錯誤。內存泄露會降低 Web 應用程序的性能,直到浪費的內存超過了系統所能分配的,應用程序將不能使用。作為一位 Web 開發者,開發一個滿足功能要求的應用程序只是第一步,性能要求和 Web 應用程序的成功是同樣重要的,更何況它可能會導致應用程序錯誤或瀏覽器崩潰。

  3. Javascript 中出現內存泄露的主要原因是什么?

  1) 循環引用

  一個很簡單的例子:一個 DOM 對象被一個 Javascript 對象引用,與此同時又引用同一個或其它的 Javascript 對象,這個 DOM 對象可能會引發內存泄露。這個 DOM 對象的引用將不會在腳本停止的時候被垃圾回收器回收。要想破壞循環引用,引用 DOM 元素的對象或 DOM 對象的引用需要被賦值為 null。

  2) Javascript 閉包

  因為 Javascript 范圍的限制,許多實現依賴 Javascript 閉包。如果你想了解更多閉包方面的問題,請查看我的前面的文章 JavaScript Scope and Closure 。

  閉包可以導致內存泄露是因為內部方法保持一個對外部方法變量的引用,所以盡管方法返回了,內部方法還可以繼續訪問在外部方法中定義的私有變量。對 Javascript 程序員來說最好的做法是在頁面重載前斷開所有的事件處理器。

  3) DOM 插入順序

  當 2 個不同范圍的 DOM 對象附加到一起的時候,一個臨時的對象會被創建。這個 DOM 對象改變范圍到 document 時,那個臨時對象就沒用了。也就是說, DOM 對象應該按照從當前頁面存在的最上面的 DOM 元素開始往下直到剩下的 DOM 元素的順序添加,這樣它們就總是有同樣的范圍,不會產生臨時對象。

  4) 如何檢測?

  內存泄露對開發者來說一般很難檢測,因為它們是由大量代碼中的一些意外的錯誤引起的,但它在系統內存不足前并不影響程序的功能。這就是為什么會有人在很長時間的測試期中收集應用程序性能指標來測試性能。

  最簡單的檢測內存泄露的方式是用任務管理器檢查內存使用情況。在 Chrome 瀏覽器的新選項卡中打開應用并查看內存使用量是不是越來越多。還有其他的調試工具提供內存監視器,比如 Chrome 開發者工具。這是谷歌開者這網站中的堆分析的特性的教程。

  參考:

  1. http://Javascript.crockford.com/memory/leak.html

  2. http://msdn.microsoft.com/en-us/library/Bb250448

  3. http://www.ibm.com/developerworks/web/library/wa-memleak/

  (OsChina.NET 編譯)

it知識庫Javascript內存泄露,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 日韩免费一区二区三区在线 | 一一本之道高清视频在线观看中文字幕 | 伊人久久久久久久久香港 | 美国一级大黄一片免费的网站 | 中文在线无码高潮潮喷在线 | 国产精品嫩草影视在线观看 | 久久机热视频 这里只有精品首页 | 好大好硬好湿再深一点网站 | 日本无卡无吗在线 | 果冻传媒APP免费网站在线观看 | 欧美激情久久久久久久大片 | 日本久久和电影 | 国产AV天堂亚洲AV麻豆 | 良家人妻无码专区九色颜射 | 97国内精品久久久久久久影视 | 蜜桃日本免费观看MV | 精品国产午夜肉伦伦影院 | 欧式午夜理伦三级在线观看 | 国产精品搬运 | 欧美日韩视频高清一区 | 少妇人妻偷人精品视蜜桃 | chinesevideos原创麻豆 | 袖珍人与大黑人性视频 | 久久高清一本无码 | 91香蕉福利一区二区三区 | 麻花豆传媒剧国产免费mv观看 | 恋夜影院支持安卓视频美女 | 一一本之道高清手机在线观看 | 久久综合网久久综合 | 99久久精品毛片免费播放 | 国产AV天堂亚洲AV麻豆 | 亚洲熟妇色自偷自拍另类 | 日本人xxxⅹ18hd19hd | 伊人久久电影院 | 久久永久免费视频 | 视频成人永久免费看 | 国产色精品VR一区二区 | 欧美性猛交XXXX乱大交极品 | 国产在线精品亚洲观看不卡欧美 | 久久婷婷丁香五月色综合啪免费 | 大学生第一次破苞疼哭了 |