中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js內存回收機制

發布時間:2020-07-03 00:41:28 來源:網絡 閱讀:657 作者:喝醉的熊 欄目:web開發

Javascript語言有自己的一套內存回收機制,一般情況下局部變量和對象使用完就會被系統自動回收,無需我們理會。但是碰到閉包的情況這些變量和對象是不會被回收的,對于普通的web站點,頁面刷新或跳轉這些內存也會被回收。如果是單頁web站點,頁面切換及數據請求都是通過ajax無刷新機制實現的,頁面資源無法自動回收,時間長了會嚴重影響性能,造成內存泄漏甚至頁面崩潰直接退出,這時候手動釋放不用資源就非常必要了,包含刪除dom、釋放對象等
想手動釋放含有閉包的對象時,必須先將引用對象屬性的事件刪除,然后設置為null方可消耗對象。這種事件一般是可以多次執行的,如原生事件的監聽,定時器。一般比較有名較完善的插件都有帶銷毀資源方法,如iscroll插件,里面就有一個destroy原型方法,它里面也就是移除事件監聽和刪除定時器。大家可以去看看源碼

什么是閉包?
私有作用域,把一些信息保存下來,對于保護這個功能來說,我之前在我項目中封裝過很多小的插件,但是這些插件,我怕別人用我的插件的時候,所以我會首先把所有的東西全部放在一個閉包當中保護起來,這樣就防止了全局變量的污染,至于保存的話,之前在做項目的時候,循環事件綁定,都已經變成全局下面的了,我就會用閉包機制形成一個不銷毀的作用域

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

龙海市| 普兰店市| 灵丘县| 大新县| 乌拉特后旗| 花垣县| 阿拉善右旗| 衡阳县| 确山县| 襄樊市| 南江县| 忻城县| 当雄县| 新丰县| 临颍县| 六安市| 时尚| 堆龙德庆县| 乌拉特中旗| 托克托县| 高清| 寿光市| 溧阳市| 和平区| 阳春市| 历史| 河南省| 延津县| 襄城县| 望江县| 宜黄县| 仙游县| 九台市| 鄂托克前旗| 金华市| 垣曲县| 库尔勒市| 永平县| 威远县| 阜阳市| 新安县|