JS 有哪些数据类型,区别是?
题干
- 数据类型
- 数据类型区别
题解
JS 中有两种数据类型:
- 基本数据类型(值类型)
- 复杂数据类型(引用类型,由于此类型都是对象的子类型,所以也可以叫对象类型)
基本数据类型包括:
- Number、String、Boolean、Undefined、Null、Symbol、BigInt
复杂数据类型包括:
- Object
- Object、Array、Function、Date、Set、Map、...
区别:
基本数据类型和引用数据类型在存储方面,基本数据类型的值是直接存储在栈中的,而引用数据类型的值是存储在堆中,栈中存储的是指向堆中实际对象的指针。
基本数据类型是按值访问的,因为可以直接操作保存在变量中的实际值。而复杂数据类型是按引用访问的,因为它们是保存在内存中的对象,而不是保存在变量中的值。