Skip to content

数值的扩展

二进制和八进制表示法

ES6 提供了二进制和八进制数值的新的写法

  • 0b(0B):二进制
  • 0o(0O):八进制

Number静态方法和属性拓展

  • Number.isFinite()
  • Number.isNaN()
  • Number.parseInt()
  • Number.parseFloat()
  • Number.isInteger()
  • Number.isSafeInteger()
  • Number.EPSILON

Math 对象的扩展

  • Math.trunc()
  • Math.sign()
  • Math.cbrt()
  • Math.clz32()
  • Math.imul()
  • Math.fround()
  • Math.hypot()
  • Math.expm1()
  • Math.log1p()
  • Math.log10()
  • Math.log2()
  • Math.sinh(x)
  • Math.cosh(x)
  • Math.tanh(x)
  • Math.asinh(x)
  • Math.acosh(x)
  • Math.atanh(x)

指数运算符

  • ES2016 新增了一个指数运算符(**)。
  • 指数运算符可以与等号结合,形成一个新的赋值运算符(**=)。
javascript
let a = 2;
a **= 2;
// 等同于 a = a * a;
let b = 4;
b **= 3;
// 等同于 b = b * b * b;
let a = 2;
a **= 2;
// 等同于 a = a * a;
let b = 4;
b **= 3;
// 等同于 b = b * b * b;

BigInt 数据类型

  • ES2020 引入了一种新的数据类型 BigInt(大整数),来解决这个问题。BigInt 只用来表示整数,没有位数的限制,任何位数的整数都可以精确表示。