栈
主要是拿来存储基本数据类型,用完即释放
堆
主要拿来存储复杂数据类型,比如对象,用完不会对齐进行内存释放
堆主要靠指针(内存地址)来赋值
//因为a只是将自身指针赋给b
//所以改变b的地址还是会改变a的值
const a = {name:'aiqi',age:18}
const b = a
b.age=19
console.log(a); //打印{name:'aiqi',age:19}
对象中储存复合对象
复合数据中如果有函数的话,会新开辟一个新的空间来存储函数
构造函数的this原理