ES6中JS新增的两种原始数据类型详解

前端 潘老师 6个月前 (11-12) 130 ℃ (0) 扫码查看

本文重点讲解ES6中JS新增的两种原始数据类型。我们来一起看下吧!

新增原始数据类型

ES6JavaScript新增了两种原始数据类型,分别是BigIntSymbol数据类型。接下来我会给大家演示这两种数据类型有哪些特点和使用方法。

BigInt

JavaScript中的BigInt是一种用来表示任意精度整数的数据类型,它为JavaScript提供了表示大整数的能力,使得在处理需要高精度整数的场景下更加方便和可靠。

为什么要创建这样一个数据类型呢,我给大家举个例子就知道了,我们来到浏览器上输入2 ** 53代表2^53并打印其结果,并尝试在其后面进行以下操作:

从运算结果中我们看到两次运算的结果都是一样的,我们不是在2^53基础上再加了1吗,不变的原因是对于number类型处理器的算力天花板就是2^53,所以在ES6之后新增了一种数据类型BigInt,请看下面示例:

当我们在此基础上分别在number类型的整数后面加一个n进行运算后就可以正常进行运算了,并且这个BigInt类型是没有上限的,在日常中我们计算Number类型就已经足够了,但是对于企业来说很可能会涉及很大数字的计算,这时候BigInt类型就完美的符合要求了。

Symbol

JavaScript中的Symbol是一种基本数据类型,它在ES6(ECMAScript 2015)中被引入。Symbol类型的值是唯一不可变的,通常用于对象属性的键值,以确保属性名的唯一性。

JavaScript中“=”号代表赋值语句,“==”代表判断两边数据的是否相等,“===”代表判断两边数据的数据类型是否相同,而这时候我们需要提到“===”判断的底层逻辑,简单来说其实是判断这两个数据的地址是否相等。那么Symbol类型有什么特点和作用呢,请看下面示例:

let str = 'Hello'  
let str2 = 'Hello'
console.log(str == str2); //True

没错,最终结果会是True,在框架开发中,当我们的代码和别人的代码结合时如果遇到变量名冲突就可以使用Symbol来定义数据类型

let s = Symbol('hello') //Symbol
let s2 = Symbol('hello')

console.log(s === s2); // False

我们定义了两个Symbol对象,在创建这两个变量时会单独为其开辟独立的空间,所以这两个数据的地址是不同的,最后输出也就是False

总结

在这篇文章中我们引入并分析了ES6新增的两种原始数据类型,以上就是ES6中JS新增的两种原始数据类型的全部内容,希望对你有帮助!


版权声明:本站文章,如无说明,均为本站原创,转载请注明文章来源。如有侵权,请联系博主删除。
本文链接:https://www.panziye.com/front/11088.html
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】