四、2、JavaScript的垃圾收集

来源:互联网 发布:提取背景音乐的软件 编辑:程序博客网 时间:2024/04/24 14:13

标记清除:JavaScript垃圾回收,释放内存,基本用的就是标记清除。

意思就是在代码运行之前,每一个变量就会存储在内存中,然后垃圾清除器就会用标记清除法给每一个内存中的变量打上一个标记。然后每一次进去函数环境中执行时,遇到函数环境中的变量,就会在内存中找到这个变量,然后取消他的标记。当函数执行完之后,环境被退出时,又会在内存中将函数里面的变量重新打上标记。然后垃圾清除器就回收内存中被取消标记,然后又打上标记的变量。

引用计数:跟踪每个值被引用的次数。

var A={a:1};  变量A被赋值,引用值{a:1}被引用一次,计数+1。

var A={b:1} 然后A被重新赋值,引用值{b:1} 被计数+1,引用值{a:1}就被计数-1.

当前执行环境退出时,就将计数为0的值回收。

原创粉丝点击