觉得很重要 怕以后忘了 今天记录一下 2021.12.18
/* 设置a在栈中指向堆的内存地址为null 并不会影响b在栈中指向堆的内存地址
JavaScript的堆内存不需要程序代码来显示地释放,因为堆是由自动的垃圾回收来负责的
每种浏览器中的JavaScript解释引擎有不同的自动回收方式
一个最基本的原则是:如果栈中不存在某个对象的引用,那么就认为该对象已经不再需要
在垃圾回收时就会清除该对象占用的内存空间。
因此,在不需要时应该将对象的引用释放掉,以利于垃圾回收,这样就可以提高程序的性能。
*/
let a = {
name: '张三'
}
let b = a
a = null
console.log(a); // null
console.log(b); // {name: '张三'}