美文网首页
Number与Infinity

Number与Infinity

作者: 李霖弢 | 来源:发表于2019-08-07 10:07 被阅读0次

    Number

    静态属性
    • MAX_VALUE
      可表示的最大的数,MAX_VALUE 属性值接近于 1.79E+308。大于 MAX_VALUE 的值代表 "Infinity"。
    • MIN_VALUE
      可表示的最小的数,即最接近 0 的正数 (实际上不会变成 0)。最大的负数是 -MIN_VALUE,MIN_VALUE 的值约为 5e-324。小于 MIN_VALUE ("underflow values") 的值将会转换为 0。
    • NaN
      非数字值(Not-A-Number)。
    • NEGATIVE_INFINITY
      负无穷大,溢出时返回该值。该值小于 MIN_VALUE。
    • POSITIVE_INFINITY
      正无穷大,溢出时返回该值。该值大于 MAX_VALUE。
    实例方法
    • valueOf()
      返回一个 Number 对象的原始数字值。
    var num = new Number(10); 
    console.log(num.valueOf()); // 输出:10
    
    • toExponential()
      把对象的值转换为指数计数法。
    • toFixed()
      把数字转换为字符串,并对小数点指定位数。

    Infinity

    Infinity是一个Number类型的字面量,表示无穷大。当一个Number类型的值,在运算过程中超过了所能表示的最大值,就会得到无穷大(而非NaN)。

    console.log(100 / 0); // Infinity
    console.log(-100 / 0); // -Infinity
    console.log(1e1000); // Infinity
    

    通过Number.isFinite(n)可以判断一个值是否是有穷的。当n是Number类型时,只有它是正负InfinityNaN时,返回false,其他情况下返回true。
    任何一个有穷数和Infinity加减的结果都是Infinity,因此Infinity === Infinity - 1
    此外Infinity进行运算时,有时也会出现NaN

    console.log(Infinity + Infinity); // Infinity
    console.log(Infinity - Infinity); // NaN
    console.log(Infinity * Infinity); // Infinity
    console.log(Infinity / Infinity); // NaN
    console.log(Infinity * 0); // NaN
    

    基本数据类型与Number对象

    typeof 1   //number
    typeof new Number(1) //object
    1 instanceof Number //false
    new Number(1) instanceof Number //true
    

    其中1是基本数据类型,不是引用数据类型,因此instanceof总为false
    通过new Number(1)包装以后成为引用数据类型,可以判断为Number

    相关文章

      网友评论

          本文标题:Number与Infinity

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