画鸵萌宠网
1、标记清除,这是javascript中最常用的垃圾回收方式。当变量进入执行环境时,标记该变量为进入环境。
逻辑上,不能释放进入环境的变量所占有的内存。因为只要流入相应的环境,就有可能使用它们。变量离开环境时,标记为离开环境。
var m = 0,n = 19 // 把 m,n,add() 标记为进入环境。 add(m, n) // 把 a, b, c标记为进入环境。 console.log(n) // a,b,c标记为离开环境,等待垃圾回收。 function add(a, b) { a++ var c = a + b return c }
2、引用计数,是指语言引擎有一张引用表,保存了内存里面所有的资源。
如果一个值的引用次数是0,就表示这个值不再用到了,因此可以将这块内存释放。
var arr = [1, 2, 3, 4]; arr = [2, 4, 5] console.log('浪里行舟');
以上就是JavaScript垃圾回收的两种方法,希望对大家有所帮助。更多Javascript学习指路:
推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。