美文网首页重学es6
数值 讲解之 扩展

数值 讲解之 扩展

作者: zhang463291046 | 来源:发表于2020-08-24 18:04 被阅读0次

    以下内容是引用或者借鉴别人的,自己只是做个笔记,方便学习。理解错误的地方,欢迎评论。如有侵权,私聊我删除,未经允许,不准作为商业用途

    静态方法

    • isFinite()用来检查一个数值是否为有限的
    // 参数类型不是数值,Number.isFinite一律返回false
    Number.isFinite(15); // true
    Number.isFinite(0.8); // true
    Number.isFinite(NaN); // false
    Number.isFinite(Infinity); // false
    Number.isFinite(-Infinity); // false
    Number.isFinite('foo'); // false
    Number.isFinite('15'); // false
    Number.isFinite(true); // false
    
    • isNaN()用来检查一个值是否为NaN
    // 参数类型不是NaN,Number.isNaN一律返回false
    Number.isNaN(NaN) // true
    Number.isNaN("NaN") // false
    Number.isNaN(15) // false
    Number.isNaN('15') // false
    Number.isNaN(true) // false
    Number.isNaN(9/NaN) // true
    Number.isNaN('true' / 0) // true
    Number.isNaN('true' / 'true') // true
    
    • parseInt()返回整数部分
      -parseFloat()返回整数和小数部分
    Number.parseInt('12.34') // 12
    Number.parseFloat('123.45#') // 123.45
    

    isInteger()用来判断一个数值是否为整数

    //参数不是数值,Number.isInteger返回false。
    Number.isInteger(25) // true
    Number.isInteger(25.0) // true
    Number.isInteger(25.1) // false
    Number.isInteger() // false
    Number.isInteger(null) // false
    Number.isInteger('15') // false
    Number.isInteger(true) // false
    // 小数点后16位丢失精度2
    Number.isInteger(3.0000000000000002) // true
    

    静态属性

    • Number.EPSILON表示最小精度,常用于误差检查函数
    function withinErrorMargin (left, right) {
      return Math.abs(left - right) < Number.EPSILON * Math.pow(2, 2);
    }
    
    0.1 + 0.2 === 0.3 // false
    withinErrorMargin(0.1 + 0.2, 0.3) // true
    
    1.1 + 1.3 === 2.4 // false
    withinErrorMargin(1.1 + 1.3, 2.4) // true
    
    • Number.MAX_SAFE_INTEGER 表示最大整数值
    • Number.MIN_SAFE_INTEGER表示最小整数值
    Number.MAX_SAFE_INTEGER === Math.pow(2, 53) - 1
    // true
    Number.MAX_SAFE_INTEGER === 9007199254740991
    // true
    
    Number.MIN_SAFE_INTEGER === -Number.MAX_SAFE_INTEGER
    // true
    Number.MIN_SAFE_INTEGER === -9007199254740991
    

    isSafeInteger()则是用来判断一个整数是否落在这个范围之内

    Number.isSafeInteger(3) // true
    Number.isSafeInteger(1.2) // false
    Number.isSafeInteger(9007199254740991) // true
    Number.isSafeInteger(9007199254740992) // false
    
    • Number.MAX_VALUE 表示最大值
    • Number.MIN_VALUE表示最小值
    Number.MAX_VALUE === 1.7976931348623157e+308  // true
    Number.MIN_VALUE === 5e-324  // true
    

    相关文章

      网友评论

        本文标题:数值 讲解之 扩展

        本文链接:https://www.haomeiwen.com/subject/wkrndktx.html