JavaScript中的内存管理

无论使用哪种编程语言,内存生命周期几乎总是相同的-

  • 分配您需要的内存

  • 使用分配的内存(读,写)

  • 不再需要时释放分配的内存

第二部分在所有语言中都是明确的。开发人员需要使用分配的内存。

第一部分和最后一部分在像C这样的低级语言中是显式的,但在像JavaScript这样的高级语言中则大多是隐式的。

因此,没有明确的方法可以在JavaScript中分配或释放内存。只是初始化对象会为其分配内存。当变量超出范围时,将自动进行垃圾回收(释放该对象占用的内存。)

function test() {
//分配并使用内存
let x = {
   name: "John",
   age: 24
}
console.log(x);
return null;
//该方法一旦超出范围,就会被垃圾回收
//并且它的内存已释放。
}
test();

每次调用该方法时,都会执行注释中提到的循环。所有作用域(以及全局作用域)的循环都是相同的。