ES10虽然还只是一个草案,现在除了 Object.fromEntries之外,Chrome大多数功能都已经实现。
ES6的新特性给前端带来了巨大的变化,同时让js语言更加与时俱进,箭头函数、 类、模块化、Let与Const等新语法让js更加灵活,可以说是影响最大的一个版本变化。
ES10添加了一些有趣的特性,下面带来ES10的新特性之一:BigInt。
BigInt -任意精度整数
ES6之后基本类型增加到了6种:String、Number、Boolean、Null、Undefined、Symbol。
BigInt即是第七种基本类型,V8引擎v6.7 默认启用对 BigInt 的支持。
我们都知道在JavaScript中,Number可以准确表达的最大数字是2^53,没有比这个更大的数字。
JavaScript中Number是双精度浮点数,它可以表示的最大安全范围是正负9007199254740991,也就是2的53次方减一,在浏览器控制台分别输入Number.MAX_SAFE_INTEGER和Number.MIN_SAFE_INTEGER可查看对应的最大/小值。
现在比9007199254740992大的所有数字可以使用BigInt表达。
BigInt -语法
BigInt(value) || 数字后面加n;
可以是字符串或者整数,注意, BigInt()不是构造函数,因此不能使用new操作符。
typeof操作符检测类型:
typeof 123n; // → 'bigint'
注意
不能和Math对象中的方法一起使用;不能和任何Number实例混合运算。
从此javascript中有了七种基本类型:
boolean
null
undefined
number
string
symbol
bigint
网友评论