说明
1、栈,操作系统自动分配释放存储函数的参数值和局部变量值。它的操作模式类似于数据结构中的栈。堆,复杂类型的存储(对象)通常由程序员分配和释放。
2、简单的数据类型存储在栈中,复杂数据类型存放到堆里面。
实例
let a = 12; let b = a; let c = {name: 'xiaoHua'}; b = 13; console.log(a, c) —————————————————————————————————————————————— let a = {n:1}; let b = a; a.x = a = { // 像这种连续等于要从左往右依次赋值 n:2 }; console.log(a.x, b);
以上就是javascript堆栈内存分配的区别,希望对大家有所帮助。更多Javascript学习指路:
推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。