js数据类型有哪些?它们有什么区别?
-
js数据类型共有8种,分别是undefined,null,boolean,number,string,Object,symbol,bigint
-
symbol和bigint是es6中提出来的数据类型
-
symbol创建后独一无二不可变的数据类型,它主要是为了解决出现全局变量冲突的问题
-
bigint 是一种数字类型的数据,它可以表示任意精度格式的整数,使用Bigint可以存储和操作更大的整数,即使这个整数已经超过了number的范围
-
这些数据可以分为基本数据类型和引用数据类型
- 栈:存储基本数据类型(undefined,null,boolean,number,string)
- 堆:存储引用类型(对象,数组,函数)
- 两种类型的存储方式不同
- 基本数据类型存储在栈内存中,占据空间小,大小固定,属于被频繁使用的数据,所以被放在了栈内存中
- 引用数据类型存储在堆内存中.占据空间大,大小不固定,引用类型的在栈中存储了指针,该指针指向的是堆内存中的值,