1、堆和栈区别?
栈:由操作系统自动分配释放存放函数的参数值、局部变量的值等。 简单数据类型存放到栈里面
堆:存储复杂类型对象,一般由程序员分配释放,若程序员不释放,由垃圾回收机制回收。
引用数据类型存放到堆里面。
简单数据类型:String,number,boolean,undefined,null
引用数据类型:object 对象 ; function函数;array数组
//简单数据类型存储的是值
let num1 = 10
let num2 = num1
num2 = 20
console.log(num1)
//对象 引用数据类型 栈里面存储的是地址
let obj1 = {
age: 18
}
let obj2 = obj1
obj2.age = 20
console.log(obj1)