国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

對于js垃圾回收機制的理解

2019-11-19 15:27:33
字體:
供稿:網(wǎng)友

原理

找到不再被使用的變量,然后釋放其占用的內(nèi)存,但這個過程不是時時的,因為其開銷比較大,

所以垃圾回收器會按照固定時間間隔周期性的執(zhí)行

回收方式

a.標(biāo)記清除

當(dāng)變量進(jìn)入環(huán)境時,將這個變量標(biāo)記為“進(jìn)入環(huán)境”;當(dāng)變量離開環(huán)境時,則將其標(biāo)記為“離開環(huán)境”。

標(biāo)記“離開環(huán)境”的就回收內(nèi)存

b.引入計數(shù)(低級瀏覽器)

當(dāng)變量聲明,第一次賦值時記為1,然后當(dāng)這個變量值改變時,記錄為0,將計數(shù)為0的回收

內(nèi)存泄露

a.意外的全局變量引起的內(nèi)存泄露

原因: 全局變量不會被回收

解決:使用嚴(yán)格模式避免

b.閉包引起的

原因: 活動對象被引用,使閉包內(nèi)的變量不會被釋放

解決: 將活動對象賦值為null

c.被清理的DOM元素的引用

原因: 雖然DOM被刪掉了,但對象中還存在對DOM的引用

解決: 將對象賦值為null

d.被遺忘的定時器或回調(diào)

原因: 定時器內(nèi)部實現(xiàn)閉包,回調(diào)也是閉包

解決: 清理定時器clearInterval、null

以上這篇對于js垃圾回收機制的理解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 南安市| 青龙| 晴隆县| 苏尼特左旗| 靖边县| 河津市| 龙川县| 安溪县| 开化县| 保靖县| 海淀区| 松江区| 宁海县| 赣州市| 南康市| 改则县| 新丰县| 九台市| 景德镇市| 福鼎市| 杭州市| 油尖旺区| 辽阳市| 耿马| 鄂州市| 香港| 汽车| 宜黄县| 禹州市| 云林县| 大石桥市| 南通市| 东辽县| 清苑县| 开化县| 周至县| 建瓯市| 卢氏县| 霍邱县| 阳谷县| 色达县|