JavaScript 有哪些数据类型?基本类型和引用类型的区别是什么?
请列举 JavaScript 中的数据类型,并说明基本类型(原始类型)和引用类型的核心区别。
回答
编译有声
JS 共有 8 种数据类型:
- 基本类型(7种):
undefined、null、boolean、number、string、symbol(ES6)、bigint(ES2020) - 引用类型(1种):
object(含 Array、Function、Date、RegExp、Map、Set 等)
核心区别:
- 存储位置:基本类型存在栈内存,引用类型存在堆内存,栈中存引用地址
- 赋值方式:基本类型传值(拷贝独立副本),引用类型传址(共享同一对象)
- 比较方式:基本类型比较值,引用类型比较引用地址
- 可变性:基本类型不可变(immutable),引用类型可变