ES6 数值的扩展

振作精神,努力更新!

先定个小目标,每周更新3篇内容!

本周:2022 - 06 - 20 ~ 2022 - 06 - 26 ( 第二篇 )

方法描述
0b / 0o0b011 === 3:二进制表示法;0o123 === 83:八进制表示法
Number.isFinite(number) 检验参数 number 是否有限,返回布尔值,注意参数类型
Number.isNaN(number) 检测参数 number 是否为 NaN,注意参数类型

Number.parseInt()

Number.parseInt('12.34')        // 12

Number.parseFloat()

Number.parseFloat('123.45#')        // 123.45

Number.isInteger()判断一个数是否为整数,参数不得超过 js 精度限制
Number.EPSILON一个表示 js 最大精度的常量,为 2 的 -52 次方
Number.MAX_SAFE_INTEGER一个表示 js 最大数值的常量,为  9007199254740991
Number.MIN_SAFE_INTEGER一个表示 js 最小数值的常量,为 -9007199254740991
Number.isSafeInteger()判断一个 整数 是否落在 js 可表示的整数范围
Math 对象的扩展
Math.trunc()

去除一个数的小数部分,返回整数部分

Math.trunc(4.1)        // 4

Math.sign()

判断一个数到底是正数、负数、还是零,注意参数

Math.sign(-5)        // -1

Math.sign(5)        // +1

Math.sign(0)        // +0

Math.sign(-0)        // -0

Math.sign(NaN)        // NaN

Math.cbrt()

计算一个数的立方根

Math.cbrt(8)        // 2

Math.clz32()

将参数转为 32 位无符号整数的形式,返回 32 位数前导 0 的 个数

Math.clz32(1)        // 31

Math.clz32(0b01000000000000000000000000000000)        // 1

Math.imul(a, b)返回两个数以 32 位带符号整数形式相乘的结果,返回的也是一个 32 位的带符号整数
Math.fround()

返回一个数的32位单精度浮点数形式,数值精度是24个二进制位

// 未丢失有效精度

Math.fround(1.125)        // 1.125

// 丢失精度

Math.fround(0.7)        // 0.699999988079071

Math.fround(1.0000000123)        // 1

Math.hypot(a, b, c, ...)

返回所有参数的平方和的平方根

Math.hypot(3, 4)        // 5

Math.expm1(x)返回 e^x - 1,即 Math.exp(x) - 1,注意expm1 和 exp
Math.log1p(x)返回1 + x 的自然对数,即 Math.log(1 + x)
Math.log10(x)返回以 10 为底的 的对数
Math.log2(x)返回以 2 为底的x的对数
指数运算符 | BigInt 数据类型

x ** y

x ** y ** z

x **= 3

x^y

x^(y^z),注意,该方法是从右边开始计算的

x = x * x * x,和 *= 运算类似

新的数据类型 BigInt(大整数)

只用来表示 整数,没有位数的限制

与 Number 类型区别,BigInt 类型的数据必须添加后缀 n

1234        // 普通整数

1234n      // BigInt

-42n         // 正确

+42n        // 报错

BigInt(123)         // 123n

BigInt('123')       // 123n

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值