一、内存
定义:内存是用于存储数据的地方,程序要执行一段代码,要先从硬盘加载到内存当中,再由内存发送给CPU,CUP才能对代码进行执行。
注:变量并不存储任何值,而是存储值的内存地址
JS定义一个变量
<script>
//定义一个变量
let a = '哈哈'
</script>
- JS定义变量 let a = '哈哈'
- 内存中开辟出一个空间用于存储变量名和值
- 在java中存储变量会根据变量类型 例如 int a 那么就开辟一个int大小的空间来存储值
- JS不同的是所有的变量都是用let 来定义的 例如 let a,那么就无法确定a的类型和大小,如果存放值得空间太大,会导致资源的浪费,太小又无法存储值
- 这时候就采取再内存中再开辟一个专门存储值的空间来存储值,例如这里的例子就开辟了0x11这个内存地址来存储值,
- 然后存储变量和值的而那个空间中,值的部分存储的就是指向这个值的内存
- 变量a 和变量 b de 值均为 哈哈
- 在往内存开辟空间存储变量的时候,会首先搜索内存中是否已经存储了这个变量,如果已经存储了,就不重复开辟空间存储变量、
- 因此变量a 和 变量 b指向了同一内存地址