js的堆栈内存

238 阅读1分钟

js数据类型

1、基本类型(值类型): number、string、boolean、null、undefined

2、引用类型:object、function

3、特殊类型: symbol

栈内存: 提供代码的运行环境、存储基本类型值

堆内存: 提供引用类型存储的空间

经典面试题:

let a = 0
b = a;
b ++ // 一个变量只能关联一个值 与之前的值a就断了关联

image.png

let a = {
  n: 1
}
let b = a
a.x = a = {
  n: 2
}

console.log(a.x); // undefined
console.log(b); // {n:1, x: {n:2}}

// 此处的重点是先创建a.x属性名 然后再赋值 a.x={n:2} a={n:2}  从左到右
// let x=y=2  => x= 2; y = 2 从左到右

image.png