ES6 数值拓展、Math 、Number 对象扩展

本文总结了ES6中数值扩展的内容,包括Number.EPSILON、安全整数范围以及Number对象的新方法如Number.isFinite()、Number.isNaN()等。此外,还详细介绍了Math对象的17个新方法,如Math.cbrt、Math.hypot等,涵盖了普通计算、数字处理、判断和对数等多个方面。
摘要由CSDN通过智能技术生成

ES6 总结(二)

         内容大纲:

          1、数值扩展
          2、Number 对象新方法
          3、Math 对象的扩展

1、数值扩展

  • 常量
          Number.EPSILON ,属性表示 1 与大于 1 的最小浮点数之间的差。它的值接近于 2.2204460492503130808472633361816E-16,或者 2-52。

测试数值是否在误差范围内:

    0.1 + 0.2 === 0.3; // false
    // 在误差范围内即视为相等
    var equal = (Math.abs(0.1 - 0.3 + 0.2) < Number.EPSILON); // true
  • 最大安全整数
          安全整数:Number.MAX_SAFE_INTEGER。安全整数表示在 JavaScript 中能够精确表示的整数,安全整数的范围在 2 的 -53 次方到 2 的 53 次方之间(不包括两个端点),超过这个范围的整数无法精确表示。

最大安全整数
安全整数范围的上限,即 2 的 53 次方减 1 。

  • 最小安全整数
          安全整数范围的下限,即 2 的 53 次方减 1 的负数。Number.MIN_SAFE_INTEGER

2、Number 对象新方法

1)Number.isFinite()
用于检查一个数值是否为有限的( finite ),即不是 Infinity

    console.log( Number.isFinite(1));   // true
    console.log( Number.isFinite(0.1)); // true
    
    // NaN 不是有限的
    console.log( Number.isFinite(NaN)); // false
    
    console.log( Number.isFinite(Infinity));  // false
    console.log( Number.isFinite(-Infinity)); // false
    
    // Number.isFinate 没有隐式的 Number() 类型转换,所有非数值都返回 false
    console.log( Number.isFinite('foo')); // false
    console.log( Number.isFinite('15'));  // false
    console.log( Number.isFinite(true));  // false

2)Number.isNaN()
用于检查一个值是否为 NaN 。

    console.log(Number.isNaN(NaN));      // true
    console.log(Number.isNaN('true'/0)); // true
    
    // 在全局的 isNaN() 中,以下皆返回 true,因为在判断前会将非数值向数值转换
    // 而 Number.isNaN() 不存在隐式的 Number() 类型转换,非 NaN 全部返回 false
    Number.isNaN("NaN");      // false
    Number.isNaN(undefined);  // false
    Number.isNaN({
   });         // false
    Number.isNaN("true");     // false

3)从全局移植到 Number 对象的方法
逐步减少全局方法,用于全局变量的模块化。
方法的行为没有发生改变。

Number.parseInt()

	//  用于将给定字符串转化为指定进制的整数。
    // 不指定进制时默认为 10 进制
    Number.parseInt('12.34'); // 12
    Nu
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值