ES6数值的扩展

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>数值的扩展</title>
</head>
<body>
    <script>
      //1.二进制和八进制表示方法
      //严格模式,八进制要是用前缀0o表示
      (function(){
        console.log(0o11===011);
      })() // Uncaught SyntaxError: Octal literals are not allowed in strict mode.
     //转换为数值的话采用Number()
     console.log(Number(0o10));//8
     //2.Number.isFinite(),Number.isNaN()
     //Number.isNaN判断传入的参数是否严格的等于NaN(也就是 ===)
     console.log(Number.isNaN(NaN));//true
     console.log(Number.isFinite(15));//判断有限与否//true
     //注意,如果参数类型不是数值型,Number.isFinite()一律返回false
     //3.Number.parseInt(), Number.parseFloat()
     //ES6 将全局方法 parseInt()parseFloat(),移植到 Number 对象上面,行为完全保持不变。
     console.log(Number.parseInt===parseInt);//true
     console.log(Number.parseFloat===parseFloat);//true
     //4.Number.isInteger()用来判断一个数值是否为整数
     console.log(Number.isInteger(15.3));  //false
     //5.Number.EPSILON 根据规格,它表示 1 与大于 1 的最小浮点数之间的差。
     //即能够接受的误差范围
     //构建误差检查函数
     function equal(a,b){
            if(Math.abs(a-b)<Number.EPSILON){
                return true;
            }else{
                return false
            }
        }
        console.log(0.1+0.2===0.3);//false
        console.log(equal(0.1+0.2,0.3));//true
    //6.安全整数和 Number.isSafeInteger()
    console.log(Math.pow(2,53)===Math.pow(2,53)+1);//true
    console.log(Number.MAX_SAFE_INTEGER); //数值最大9007199254740991
    console.log(Number.MIN_SAFE_INTEGER); //最小数值-9007199254740991
    console.log(Number.isSafeInteger(9007199254740990)); // true
   console.log( Number.isSafeInteger(9007199254740992) );// false
   //7.Math对象扩展
  // Math.trunc //方法用于去除一个数的小数部分,返回整数部分
   console.log(Math.trunc(4.1));//4
   console.log(Math.trunc(4.9));//4
   //Math.sign()Math.sign方法用来判断一个数到底是正数、负数、还是零
   console.log(Math.sign(5));//1
   console.log(Math.sign(-5));//-1
   console.log(Math.sign(0));//0
   console.log(Math.sign(-0));//0
   console.log(Math.sign(NaN));//NaN
   //Math.cbrt() 方法用于计算一个数的立方根
   console.log(Math.cbrt(8));//2
   //Math.hypot方法返回所有参数的平方和的平方根。
   console.log(Math.hypot(3,4));//3平方+4平方=5平方
   //8.ES2016 新增了一个指数运算符( ** )
   console.log(2**3);//8  =>Math.pow(2,3)
   //9.BigInt 数据类型(大整数)
   const a = 2172141653n;
   const b = 15346349309n;
   console.log(a*b);//33334444555566667777n

</script>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值