(三)JavaScript 内存运行机制和垃圾回收

97 阅读1分钟

javaScript重启计划

内存运行机制

JS内存空间分为栈(stack) 堆(heap) 池(一般也会归类为栈中) 。 其中栈存放变量,存放复杂对象,存放常量。

 

内存的生命周期

  1.   内存分配:当我们申明变量、函数、对象的时候,系统会自动为他 们分配内存

  2.   内存使用:即读写内存,也就是使用变量、函数等

  3.   内存回收:使用完毕,由垃圾回收机制自动回收不再使用的内存


var x = [1, 2];

function fn(y){

    y[0] = 100;

    y = [100];

    y[1] = 200;

    console.log(y);

}

fn(x);

console.log(x);

ECStack.EC.GO.VO.AO和函数底层处理机制

ECStack:【Execution Context Stack】,执行环境栈;

EC:  【EC(G)】全局执行上下文,【EC(fn)】函数执行上下文。【EC(block)】块级执行上下文

VO:    【Variable Object】全局变量对象

AO: 【Active Object】活动变量对象

GO:【Global Object】全局对象

 

image.png  

垃圾回收

待续...