乐趣区

关于前端:JS数据类型在内存上的储存原理

js 的变量在内存中是怎么贮存的,这个问题之前真的困扰我很久很久,我也是之前在 B 站某 IT 教程网站上解惑,该视频还是 17 年的老视频,不得不说真的没悔恨破费我一整天看 2017 年的 node.js 教程。


一. 根本数据类型的贮存形式

首先思考上面代码的输入后果,

没错,太简略了

A ,B 两个变量互不影响


二. 援用数据类型的贮存形式

接下来思考上面的代码

首先 obj2 必定是 xxx,那么 obj 呢?没错,答案也是 xxx,

这是因为当咱们在 js 定义了一个根本类型的时候,零碎调配 内存来保留 变量名 &也就是key=value,每一个根本类型都会调配到各自的空间,互不影响。

留神,到对象上就不一样了,在创立一个对象的时候,栈内存只会保留变量名称,而值却是零碎调配这个对象在堆内存中的 16 进制的地址。栈内存的变量名像箭头指针一样指向了堆内存的那个对象!!!!

如果上面这两行代码你能了解,那么阐明你就曾经晓得了 js 数据类型的贮存原理

1.

2.

退出移动版