栈内存用于存放简单数据的变量,使用栈这种数据结构顺序存放变量名和值,这些变量的值所占用的内存大小是固定的,比如string
number
null
boolean
undefined
堆内存用于存放引用数据,引用类型的数据大小不固定,可能动态的增加和修改
对于:
let a = 1;
let obj = {age: 123}
a
和obj
都存放在栈内存中,{age: 123}
存放于堆内存中,需要注意的是obj
变量的值是一个内存地址,也就是指针,
是一个16进制的数,所以存放于栈中,这个指针指向的实际数据存放于堆中