Number对象代表数字日期,可以是整数,也可以是浮点数。通常,您无需担心Number对象,因为浏览器会自动将数字文字转换为数字类的实例。
创建数字对象的语法:var val = new Number(number);
提供的任何非数字参数,则参数不能转换成数,则返回NaN(非数字)。
序号 | 属性和说明 |
---|---|
1 | Number.EPSILON 两个可表示数字之间的最小间隔。 |
2 | Number.MAX_SAFE_INTEGER JavaScript中的最大安全整数(2 ^ 53-1)。 |
3 | Number.MAX_VALUE 可表示的最大正数。 |
4 | MIN_SAFE_INTEGER JavaScript中的最小安全整数(-(2 ^ 53-1))。 |
5 | Number.MIN_VALUE 可表示的最小正数-即最接近零的正数(实际上不是零) |
6 | Number.Nan 特殊的“非数字”值 |
7 | Number.NEGATIVE_INFINITY 表示负无穷大的特殊值;溢出返回 |
8 | Number.POSITIVE_INFINITY 表示无穷大的特殊值;溢出返回 |
9 | Number.prototype 表示无穷大的特殊值;溢出返回 |
var interval = Number.EPSILON console.log(interval) //输出 2.220446049250313e-16 var interval = Number.MAX_SAFE_INTEGER console.log(interval) //输出 9007199254740991 var val = Number.MAX_VALUE; console.log("Value of Number.MAX_VALUE : " + val ); //输出 Value of Number.MAX_VALUE : 1.7976931348623157e+308 var val = Number.MIN_SAFE_INTEGER; console.log("Value of Number. MIN_SAFE_INTEGER: " + val ); //输出 Value of Number. MIN_SAFE_INTEGER: -9007199254740991 var val = Number.MAX_VALUE; console.log("Value of Number.MIN_VALUE : " + val ); //输出 Value of Number.MIN_VALUE : 1.7976931348623157e+308 var dayOfMonth = 50; if (dayOfMonth < 1 || dayOfMonth > 31) { dayOfMonth = Number.NaN console.log("Day of Month must be between 1 and 31.") } else { console.log("day of month "+dayOfMonth) } //输出 Day of Month must be between 1 and 31. var val = Number.NEGATIVE_INFINITY; console.log("Value of Number.NEGATIVE_INFINITY : " + val ); //输出: Value of Number.NEGATIVE_INFINITY: -Infinity
var val = Number.POSITIVE_INFINITY; console.log("Value of Number.POSITIVE_INFINITY : " + val ); //输出:Value of Number.POSITIVE_INFINITY : Infinity
序号 | 方法与说明 |
---|---|
1 | Number.isNaN() 确定传递的值是否为NaN。 |
2 | Number.isFinite() 确定传递的值是否为有限数字。 |
3 | Number.isInteger() 确定传递的值是否为整数。 |
4 | Number.isSafeInterger() 确定传递的值是否为安全整数(-(253-1)和253-1之间的数字) |
5 | Number.parseFloat() 该值与全局对象的parseFloat()相同 |
6 | Number.parseInt() 该值与全局对象的parseInt()相同 |
Number对象仅包含作为每个对象定义的一部分的默认方法。
序号 | 实例方法和描述 |
---|---|
1 | toExponential() 返回以指数表示形式表示数字的字符串 |
2 | toFixed() 返回以定点表示法表示数字的字符串 |
3 | toLocaleString() 返回具有此数字的语言转化为字符串形式 |
4 | toPrecision() 返回一个字符串,该字符串以定点或指数表示法表示指定精度的数字 |
5 | toString() 返回表示指定基数(基数)中指定对象的字符串 |
6 | valueOf() 返回指定对象的原始值。 |
//toExponential() number.toExponential( [fractionDigits] ) //number.toExponential( [fractionDigits] ) //一个字符串,以指数表示形式表示Number对象,其小数点前有一位数字,四舍五入为小数点后的fractionDigits数字。 //如果省略fractionDigits参数,则小数点后的位数默认为唯一表示该值所必需的位数。 var num1 = 1225.30 var val = num1.toExponential(); console.log(val) //输出1.2253e+
//number.toFixed( [digits] ) digits-小数点后出现的位数。 //数字的字符串表示形式,不使用指数表示法,并且在小数点后具有确切的位数。 var num3 = 177.234 console.log("num3.toFixed() is "+num3.toFixed()) //177 console.log("num3.toFixed(2) is "+num3.toFixed(2))//177.23 console.log("num3.toFixed(6) is "+num3.toFixed(6))//177.234000
//number.toLocaleString() 将数字转化为字符串 var num = new Number(177.1234); console.log( num.toLocaleString()); //输出177.1234
//number.toPrecision( [ precision ] ) precision -一个整数,指定有效位数。 //返回一个字符串,该字符串以定点或指数表示形式四舍五入为有效的有效数字。 var num = new Number(7.123456); console.log(num.toPrecision()); //7.123456 console.log(num.toPrecision(1));//7 console.log(num.toPrecision(2));//7.1
//number.toString( [radix] ) radix -2到36之间的整数,指定用于表示数值的基数。(转为radix进值) var num = new Number(10); console.log(num.toString()); //10 console.log(num.toString(2));//1010 console.log(num.toString(8));//12
在ES6之前,关于整数的二进制或八进制表示,最好的选择是将它们传递给带有基数的parseInt()。在ES6中,可以使用0b和0o前缀分别表示二进制和八进制整数文字。同样,要表示一个十六进制值,请使用0x前缀。
前缀可以大写或小写。但是,建议坚持使用小写版本。
ES6在对象常量声明中引入了以下语法更改。
用对象属性初始化器语法,我们可以直接使用变量初始化对象。这将创建与变量名称相同的属性。
在计算属性语法中,可以从变量动态创建对象的属性。在下面的示例中,名称后缀的变量用于计算conpany对象。
在简洁的方法语法中,我们可以直接使用和声明方法,而无需使用function关键字。这是一种简化的语法,可以在对象文字中包含函数。