JavaScript中的数据类型及区别

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

JavaScript中的数据类型

JavaScript中共有Number类型、String类型、Boolean类型、Null类型、Undefined类型、Object类型、BigInt类型、Symbol这8种数据类型其中后两种数据类型BigInt、Symbol是ES6中新增的数据类型。

  • BigInt是一种数字类型的数据它可以表示任意精度格式的整数使用BigInt可以安全地存储和操作大整数这种数据类型的特点就是数据涵盖的范围大能够解决超出普通数据类型范围报错的问题即使这个数已经超出了Number能够表示的安全整数范围。

  • Symbol它代表创建后独一无二且不可变的数据类型可以作为object的key它主要是为了解决可能出现的全局变量冲突的问题。

分类

JavaScript中可以将数据分为两类基本数据类型引用数据类型。

1.基本数据类型

基本数据类型也称为简单数据类型包含7种类型分别是Number 、String、Boolean、BigInt、Symbol、Null、Undefined。

2.引用数据类型

引用数据类型也叫复杂数据类型通常用Object代表普通对象、数组、正则、日期、Math数学函数都属于Object。

区别

基本数据类型和引用数据类型的主要区别在于在内存中的数据存储的方式不同。
1基本数据类型是直接存储在栈中的简单数据段占据空间小大小固定属于被频繁使用的数据。栈是存储基本数据类型和执行代码的空间。
2引用数据类型是存储在堆内存中占据空间大大小不固定。引用数据类型在栈中存储了指针该指针指向堆中该实体的起始地址当解释器寻找引用值时会检索其在栈中的地址取得地址后从堆中获得实体。

堆和栈的概念存在于数据结构和操作系统内存中在数据结构中

  • 栈中数据的存取方式是先进后出
  • 堆是一个优先队列是按照优先级来进行排序的优先级可以按照大小来规定。

在操作系统中内存被分为栈区和堆区

  • 栈区内存由编译器自动分配释放存放函数的参数值局部变量的值等其操作方式类似于数据结构中的栈。
  • 堆区内存一般由开发者分配释放若开发者不释放程序结束时可能由垃圾回收机制回收。
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: JavaScriptJava