js内存理解

栈与堆

  • 栈空间先进后出,后进先出
  • js变量声明顺序对应栈空间
  • 在JSON格式的数据中,我们存储的key-value是可以无序的
  • JavaScript中有5中基础数据类型,分别是Undefined、Null、Boolean、Number、String。基础数据类型都是按值访问
  • 简单数据栈
  • 按引用访问
  • JavaScript的内存生命周期
  • 分配空间,使用内存,释放空间
  • 在JavaScript中,最常用的是通过标记清除的算法来清楚不使用的变量
// 为了更好的搞懂变量对象与堆内存
    var a = 20;   // 变量对象
    var b=a;
    b=30;
    // console.log(a);//20

    // 引用变量
    var arr =[1,2,3];
    var o ={greeting:'hello',
    a:30};//// 变量o存在于变量对象中,{greeting:'hello'} 作为对象存在于堆内存中
    var n = o;
    n.a="40";
    // console.log(n);//30
    // var a = null; 释放引用

 

posted @ 2017-09-13 15:44  alan-alan  阅读(134)  评论(0编辑  收藏  举报