javascript內存泄露解決辦法

  1. 避免在局部作用域(函數體)裏邊創建全局變量。
  2. 如果需要操作dom,比如append,避免在for裏邊append。可以在for循環裏邊把需要的dom拼接成字符串,在for循環結束再一次性append。
  3. 在數據結構中存儲的DOM節點,當不再需要這些DOM引用時,記得及時清空(置爲null)。
  4. 發請求獲取數據,可以把需要的數據保存在一個變量裏,避免之後需要的時候每次都讀取。建議:var config =
    res.data.data.config;避免之後每次都讀取res下的config。
  5. 避免在setInterval裏邊發請求。建議在請求success裏邊,用setTimeout調用自身,遞歸實現。如果需要使用setInterval實現,記得及時清理。
  6. 關於發請求獲取到的數據,保存在一個對象(如data)裏邊,定期清理(data=null),如果需要做初始化,可以在data=null之後再初始化。
  7. 編寫公共函數時,要有輸入和輸出,避免對輸入的參數進行修改和賦值。應創建局部變量,把修改好的數據存儲在局部變量裏作爲結果return。

PS:以上爲個人理解,如有不當歡迎指出補充,大家一起交流學習~

傳送門

(本文乃作者原創,轉載此文章請註明作者和出處)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章