美文网首页
JavaScript垃圾回收

JavaScript垃圾回收

作者: storyWrite | 来源:发表于2023-12-28 14:13 被阅读0次

1. 常见实现原理

  • 标记清理
    当变量进入对应上下文中时标记函数变量为存在使用,当变量不在当前上下文时标记当前变量为未使用
function foo() {
// 执行进入函数,变量定义赋值
  const num = 9
// 标记变量num为使用中
}
// 开始执行函数
foo()
//  函数执行完成 标记num为未使用

// 由浏览器垃圾回收机制(复杂),不同频率,或者当前浏览器内存使用情况等执行回收,回收标记为未使用的变量num
  • 引用计数
    根据变量是否存在引用,记录引用次数,引用次数为0,视为垃圾变量
//  {name:'test'}引用为1
const a= {name:'test'}
//  {name:'test'}引用为2
const b = a 
//  {name:'test'}引用为1
b = null
//  {name:'test'}引用为0
a= bull
// 垃圾回收触发 回收 {name:'test'}

存在问题的情况

// {name:'a'} 引用为1
const a = {name:'a'}
// {name:'b'} 引用为1
const b = {name:'b'}
// {name:'b'} 引用为2
a.child = b
// {name:'a'} 引用为2
b.child = a

a = null
b = null
// 引用仍然为2 这两个变量将无法回收 

相关文章

  • 垃圾回收机制

    垃圾回收机制—GC Javascript具有自动垃圾回收机制(GC:Garbage Collecation),也就...

  • JavaScript中的垃圾回收

    垃圾回收概述 JavaScript具有垃圾自动回收机制 原理是:找出不再使用的变量,释放其内存空间,为此垃圾回收器...

  • JS 的垃圾回收机制与内存管理

    垃圾回收机制 Javascript具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,...

  • JavaScript垃圾回收机制

    什么是垃圾回收机制? 和java,c#一样,javascript也有垃圾回收的机制,比如说c++和c就没有垃圾回收...

  • JavaScript垃圾回收机制

    JavaScript具有自动垃圾回收机制,回收原理很简单:找到那些不再使用的变量,然后释放其内存空间,垃圾回收器会...

  • JavaScript中的垃圾收集

    JavaScript具有自动垃圾回收机制,垃圾回收机制会按照固定的时间间隔周期性地执行这一操作,垃圾回收机制必须跟...

  • JavaScript垃圾回收

      JavaScript具有自动垃圾收集机制,也就是说,执行环境会负责管理代码执行过程中使用的内存。而在C和C++...

  • JavaScript垃圾回收

    垃圾回收机制 1. 标记清除 当变量进入环境(例如,在函数中声明一个变量)时,就将这个变量标记为“进入环境”。内存...

  • JavaScript的垃圾回收机制

    JavaScript采用的垃圾回收机制是标记扫描算法(Mark-and-sweep algorithm),它会回收...

  • JS_垃圾回收机制

    JavaScirpt垃圾回收机制 JavaScript具有自动垃圾回收机制,也就是说,执行环境会负责管理代码执行过...

网友评论

      本文标题:JavaScript垃圾回收

      本文链接:https://www.haomeiwen.com/subject/agmlndtx.html