4, 栈和堆的理解?
(1)栈(值类型):栈会自动分配内存空间,会自动释放,存放基本类型,简单的数据段,占据固定大小的空间。
注:变量为主的数据类型
基本类型:String,Number,Boolean,Null,Undefined
(2)堆(引用类型):动态分配的内存,大小不定也不会自动释放,存放引用类型,指那些可能由多个值构成的对象,保存在堆内存中,包含引用类型的变量,实际上保存的不是变量本身,而是指向该对象的指针。
注:方法为主(方法指的是函数)
(3)引用类型(以地址存在):Function,Array,Object