堆内存与栈内存

区别 栈内存 堆内存
数据结构 先进后出,后进先出 堆数据结构是一种树状结构。例如在JSON格式的数据中,我们存储的key-value是可以无序的,只要知道key,就能取出这个key对应的value。
变量类型 基本类型:Boolean、Number、String、Undefined、Null,**以及对象变量的指针 引用类型:Object
变量大小 已知,固定 未知,可动态调整
空间大小
分区效率 较低
访问方式 按值 按引用
空间分配方式 由系统自动分配内存空间 由代码进行指定分配
垃圾回收 用完即回收 因为存在很多不确定的引用,只有当所有调用的变量全部销毁之后才能回收