原始数据类型
存储
- 原始数据类型是直接存储在栈(stack)里面的简单数据段
- 栈区内存由编译器自动分配释放,存放函数的参数值、局部变量的值等
特点
- 占据空间小、大小固定,属于被频繁使用的数据
- 栈中数据的存取方式为先进后出
分类
- Number
- String
- Boolean
- Undefined
- Null
- BigInt (ES10+)
- Symbol (ES6+)
引用数据类型
存储
- 引用数据类型存储在堆(heap)中的对象
- 堆区内存由开发者分配释放,若开发者不释放,在程序结束后可能由垃圾回收机制收回
特点
- 占据空间大、大小不固定
- 如果存储在栈中,将会影响程序运行的性能;引用数据类型在栈中存储了指针,该指针指向堆中该实体的起始地址。当解释器寻找引用值时,会先检索其在栈中的地址,取得地址后从堆中获得实体
- 堆是一个优先队列,是按照优先级来排序的,优先级可以按照大小来规定
分类
- Object
- Function
- Array
----------------------------------------------------------------------------------每日一问:2024/4/22