上一章讲过JS里的数据类型转化,这一章来聊聊JS如何存数据以及如何转化数据。
●基本数据类型是存储在栈内存中。
![](https://img.haomeiwen.com/i3157795/4b2dc8ad32059d30.png)
●引用数据类型则是栈内存和堆内存都要用上
![](https://img.haomeiwen.com/i3157795/f68528ba8663a5a3.png)
●引用数据的赋值和基本类型数据的赋值
![](https://img.haomeiwen.com/i3157795/8451a7b466cecbb7.png)
var a = [1]
表示堆内存中有数组[1] ,栈内存中有数组a,a中是拿着堆内存的地址(相当于房间钥匙)指向了堆内存中的[1]
var b=a
表示栈内存中的a中的堆内存的地址拷贝一份给b,从而b中也有a的堆内存的地址,同时也指向堆内存中的[1]
总结:所以JS中的赋值都是把栈区的数据(房间钥匙或者变量值)复制一份,给左边的变量。这一点,无论是基本数据类型还是引用数据类型。都是一致的。
网友评论