您好,欢迎访问一九零五行业门户网

JavaScript中Number对象的介绍(代码示例)

本篇文章给大家带来的内容是关于javascript中number对象的介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
一、创建number实例对象
    /**     * new number(value);     * value  被创建对象的数字值     *     * number 对象主要用于:        如果参数无法被转换为数字,则返回 nan。        在非构造器上下文中 (如:没有 new 操作符),number 能被用来执行类型转换     */    let number = new number(1100);    console.log(number); //number {1100}    console.log(number(123));     // 123    console.log(number());        // 0    console.log(number(0x11));    // 17    console.log(number(0b11));    // 3    console.log(number(0o11));    // 9    console.log(number(foo));     // nan    console.log(number(100a));    // nan
二、number静态属性
1.number.epsilon 属性
表示 1 和大于 1 的最小值(可表示为 number)的差值,epsilon 属性的值接近于 2.2204460492503130808472633361816e-16,或者 2^(-52)
    let x = 0.2;    let y = 0.3;    let z = 0.1;    let equal = (math.abs(x - y + z) < number.epsilon); //true
2.number.max_safe_integer 属性
常量表示在 javascript 中最大的安全整数(maxinum safe integer)(2^53 - 1)
3.number.max_value 属性
表示在 javascript 里所能表示的最大数值,接近于 1.79e+308,大于 max_value 的值代表 infinity
4.number.min_safe_integer 属性
 代表在 javascript中最小的安全的integer型数字 (-(2^53 - 1))
5.number.min_value 属性
表示在 javascript 中所能表示的最小的正值,值约为 5e-324,小于 min_value (underflow values) 的值将会转换为 0
6.number.negative_infinity 属性
表示负无穷大,其值和全局对象的 infinity 属性的负值相同
7.number.nan 属性
表示“非数字”(not-a-number),和 全局的nan 相同
8.number.positive_infinity 属性
表示正无穷大,其值同全局对象 infinity 属性的值相同
9.number.prototype 属性
表示 number 构造函数的原型,所有 number 实例都继承自 number.prototype,修改 number 构造函数的原型对象会影响到所有 number 实例
三、number静态方法
1.number.isfinite() 方法用来检测传入的参数是否是一个有穷数
    /**     * number.isfinite() 方法用来检测传入的参数是否是一个有穷数(finite number)     * number.isfinite(value)     * value   要被检测有穷性的值     *     * 和全局的 isfinite() 函数相比,这个方法不会强制将一个非数值的参数转换成数值,这就意味着,只有数值类型的值,且是有穷的(finite),才返回 true     * 返回值:一个 布尔值 表示给定的值是否是一个有穷数     */    console.log(number.isfinite(infinity));  // false    console.log(number.isfinite(nan));       // false    console.log(number.isfinite(-infinity)); // false    console.log(number.isfinite(0));         // true    console.log(number.isfinite(2e64));      // true    console.log(number.isfinite('0'));       // false, 全局函数 isfinite('0') 会返回 true
2.number.isinteger() 方法用来判断给定的参数是否为整数
    /**     * number.isinteger() 方法用来判断给定的参数是否为整数     * number.isinteger(value)     * value   要判断此参数是否为整数     *     * 如果被检测的值是整数,则返回 true,否则返回 false。注意 nan 和正负 infinity 不是整数     * 返回值:判断给定值是否是整数的 boolean 值     */    console.log(number.isinteger(0));         // true    console.log(number.isinteger(1));         // true    console.log(number.isinteger(-100000));   // true    console.log(number.isinteger(0.1));       // false    console.log(number.isinteger(math.pi));   // false    console.log(number.isinteger(infinity));  // false    console.log(number.isinteger(-infinity)); // false    console.log(number.isinteger(10));      // false    console.log(number.isinteger(true));      // false    console.log(number.isinteger(false));     // false    console.log(number.isinteger([1]));       // false
3.number.isnan() 方法确定传递的值是否为 nan和其类型是 number
    /**     * number.isnan() 方法确定传递的值是否为 nan和其类型是 number。它是原始的全局isnan()的更强大的版本     * number.isnan(value)     * value  要被检测是否是 nan 的值     *     * nan 最特殊的地方就是,我们不能使用相等运算符(== 和 ===)来判断一个值是否是 nan,因为 nan == nan 和 nan === nan 都会返回 false     * 返回值:一个布尔值,表示给定的值是否是 nan     */    console.log(nan == nan); //false    console.log(nan === nan); //false    console.log(number.isnan(nan));        // true    console.log(number.isnan(number.nan)); // true    console.log(number.isnan(0 / 0));     // true// 下面这几个如果使用全局的 isnan() 时,会返回 true。    console.log(number.isnan(nan));      // false,字符串 nan 不会被隐式转换成数字 nan。    console.log(number.isnan(undefined));  // false    console.log(number.isnan({}));         // false    console.log(number.isnan(blabla));   // false    console.log(isnan(nan));      // true    console.log(isnan(undefined));  // true    console.log(isnan({}));         // true    console.log(isnan(blabla));   // true
4.number.issafeinteger() 方法用来判断传入的参数值是否是一个“安全整数”(safe integer)
    /**     * number.issafeinteger() 方法用来判断传入的参数值是否是一个“安全整数”(safe integer)     * number.issafeinteger(testvalue)     * testvalue   需要检测的参数     *     * 返回值:一个布尔值 表示给定的值是否是一个安全整数(safe integer)     */    console.log(number.issafeinteger(3));                    // true    console.log(number.issafeinteger(math.pow(2, 53)));       // false    console.log(number.issafeinteger(math.pow(2, 53) - 1));   // true    console.log(number.issafeinteger(nan));                  // false    console.log(number.issafeinteger(infinity));             // false    console.log(number.issafeinteger(3));                  // false    console.log(number.issafeinteger(3.1));                  // false    console.log(number.issafeinteger(3.0));                  // true
5.number.parsefloat() 方法可以把一个字符串解析成浮点数。该方法与全局的 parsefloat() 函数相同
    /**     * number.parsefloat() 方法可以把一个字符串解析成浮点数。该方法与全局的 parsefloat() 函数相同     * number.parsefloat(string)     * string 被解析的字符串     */    console.log(number.parsefloat(3.14)); //3.14    console.log(number.parsefloat(314e-2)); //3.14    console.log(number.parsefloat(0.0314e+2)); //3.14    console.log(number.parsefloat(3.14more non-digit characters)); //3.14
6.number.parseint() 方法可以根据给定的进制数把一个字符串解析成整数。该方法和全局的 parseint() 函数相同
    /**     * number.parseint() 方法可以根据给定的进制数把一个字符串解析成整数。该方法和全局的 parseint() 函数相同     * number.parseint(string[, radix])     * string   要被解析的值。        如果参数不是一个字符串,则将其转换为字符串(使用  tostring 抽象操作),字符串开头的空白符将会被忽略     * radix   一个介于2和36之间的整数,表示上述字符串的基数        比如参数10表示使用我们通常使用的十进制数值系统        当未指定基数时,不同的实现会产生不同的结果,通常将值默认为10     *     * 返回值:返回解析后的整数值。如果被解析参数的第一个字符无法被转化成数值类型,则返回 nan     */    console.log(number.parseint(015, 10)); //15    console.log(number.parseint(0xf, 16)); //15    console.log(number.parseint('017', 8)); //15    console.log(number.parseint(1111, 2)); //15    console.log(number.parseint(15.99, 10)); //15
四、number实例方法
1.toexponential() 方法以指数表示法返回该数值字符串表示形式
    /**     * toexponential() 方法以指数表示法返回该数值字符串表示形式     * numobj.toexponential(fractiondigits)     *     * fractiondigits  可选,一个整数,用来指定小数点后有几位数字。默认情况下用尽可能多的位数来显示数字     * 返回值:一个用幂的形式 (科学记数法) 来表示number 对象的字符串     */    let number1 = 777.1234;    console.log(number1.toexponential()); //输出 7.771234e+2    console.log(number1.toexponential(4)); //输出 7.7712e+2    console.log(number1.toexponential(2)); //输出 7.77e+2
2.tofixed() 方法使用定点表示法来格式化一个数
    /**     * tofixed() 方法使用定点表示法来格式化一个数     * numobj.tofixed(digits)     *     * digits  小数点后数字的个数;介于0到20(包括)之间,实现环境可能支持更大范围。如果忽略该参数,则默认为 0     *     * 返回值:所给数值的定点数表示法的字符串形式     */    let number2 = 12345.6789;    console.log(number2.tofixed());      // 返回 12346:进行四舍五入,不包括小数部分    console.log(number2.tofixed(1));     // 返回 12345.7:进行四舍五入    console.log(number2.tofixed(6));     // 返回 12345.678900:用0填充    console.log(-2.34.tofixed(1));         // 返回 -2.3 (由于操作符优先级,负数不会返回字符串)    console.log((-2.34).tofixed(1));       // 返回 -2.3 (若用括号提高优先级,则返回字符串)
3.toprecision() 方法以指定的精度返回该数值对象的字符串表示
    /**     * toprecision() 方法以指定的精度返回该数值对象的字符串表示     * numobj.toprecision(precision)     *     * precision  可选。一个用来指定有效数个数的整数     *     * 返回值:以定点表示法或指数表示法表示的一个数值对象的字符串表示,四舍五入到 precision 参数指定的显示数字位数     */    let number3 = 5.123456;    console.log(number3.toprecision());  //输出 5.123456    console.log(number3.toprecision(5)); //输出 5.1235    console.log(number3.toprecision(2)); //输出 5.1    console.log(number3.toprecision(1)); //输出 5// 注意:在某些情况下会以指数表示法返回    console.log((1234.5).toprecision(2)); // 1.2e+3
4.tostring() 方法返回指定 number 对象的字符串表示形式
    /**     * tostring() 方法返回指定 number 对象的字符串表示形式     * numobj.tostring([radix])     *     * radix  指定要用于数字到字符串的转换的基数(从2到36)。如果未指定 radix 参数,则默认值为 10     */    let count = 10;    console.log(count.tostring());    // 输出 '10'    console.log((17).tostring());     // 输出 '17'    console.log((17.2).tostring());   // 输出 '17.2'    let x = 6;    console.log(x.tostring(2));       // 输出 '110'    console.log((254).tostring(16));  // 输出 'fe'    console.log((-10).tostring(2));   // 输出 '-1010'    console.log((-0xff).tostring(2)); // 输出 '-11111111'
5.valueof() 方法返回一个被 number 对象包装的原始值
    /**     * valueof() 方法返回一个被 number 对象包装的原始值     * numobj.valueof()     *     * 返回值:表示指定 number 对象的原始值的数字     */    let number4 = new number(10);    console.log(typeof number4);  // object    let num = number4.valueof();    console.log(num);            // 10    console.log(typeof num);    // number
以上就是javascript中number对象的介绍(代码示例)的详细内容。
其它类似信息

推荐信息