JavaScript参考手册
Number
Number
JavaScript 的Number 对象是经过封装的能让你处理数字值的对象。Number对象由 Number()构造器创建。
语法
new Number(value);
参数
value被创建对象的数字值。
描述
Number对象主要用于:
- 如果参数无法被转换为数字,则返回
NaN。
- 在非构造器上下文中 (如:没有
new操作符),Number能被用来执行类型转换。
属性
Number.EPSILON两个可表示(representable)数之间的最小间隔。
Number.MAX_SAFE_INTEGERJavaScript 中最大的安全整数 (253- 1)。
Number.MAX_VALUE能表示的最大正数。最小的负数是-MAX_VALUE。
Number.MIN_SAFE_INTEGERJavaScript 中最小的安全整数 (-(253- 1)).
Number.MIN_VALUE能表示的最小正数即最接近 0 的正数 (实际上不会变成 0)。最大的负数是-MIN_VALUE。
Number.NaN特殊的“非数字”值。
Number.NEGATIVE_INFINITY特殊的负无穷大值,在溢出时返回该值。
Number.POSITIVE_INFINITY特殊的正无穷大值,在溢出时返回改值。
Number.prototypeNumber 对象上允许的额外属性。
方法
Number.isNaN()确定传递的值是否是 NaN。
Number.isFinite()确定传递的值类型及本身是否是有限数。
Number.isInteger()确定传递的值类型是“number”,且是整数。
Number.isSafeInteger()确定传递的值是否为安全整数 ( -(253 - 1) 至 253 - 1之间)。
Number.toInteger()计算传递的值并将其转换为整数 (或无穷大)。
Number.parseFloat()和全局对象
parseFloat() 一样。
Number.parseInt()和全局对象
parseInt() 一样。
Number 实例
所有Number实例都继承自Number.prototype。被修改的 Number构造器的原型对象对全部Number实例都生效。
方法
Number.prototype.toExponential()Returns a string representing the number in exponential notation.
Number.prototype.toFixed()Returns a string representing the number in fixed-point notation.
Number.prototype.toLocaleString()Returns a string with a language sensitive representation of this number. Overrides the
Object.prototype.toLocaleString()method.
Number.prototype.toPrecision()Returns a string representing the number to a specified precision in fixed-point or exponential notation.
Number.prototype.toSource()Returns an object literal representing the specifiedNumberobject; you can use this value to create a new object. Overrides theObject.prototype.toSource()method.
Number.prototype.toString()Returns a string representing the specified object in the specified radix (base). Overrides theObject.prototype.toString()method.
Number.prototype.valueOf()Returns the primitive value of the specified object. Overrides theObject.prototype.valueOf()method.
示例
使用 Number 对象给数字变量赋值
下例使用Number对象的属性给几个数字变量赋值:
var biggestNum = Number.MAX_VALUE;
var smallestNum = Number.MIN_VALUE;
var infiniteNum = Number.POSITIVE_INFINITY;
var negInfiniteNum = Number.NEGATIVE_INFINITY;
var notANum = Number.NaN;
整数类型的范围
下例展示了Number对象所能表示的最大和最小整数 (详情请参阅 ECMAScript standard, chapter 8.5 The Number Type):
var biggestInt = 9007199254740991;
var smallestInt = -9007199254740991;
在解析序列化的JSON时,如果JSON解析器将它们强制转换为Number类型,那么超出此范围的整数值可能会被破坏。在工作中使用String类型代替,是一个可行的解决方案。
使用 Number 转换 Date 对象
下例使用 Number 作为函数来转换Date对象为数字值:
var d = new Date('December 17, 1995 03:24:00');
console.log(Number(d));
这将输出 "819199440000"。
转换数字字符串为数字
Number('123') // 123
Number('12.3') // 12.3
Number('') // 0
Number('0x11') // 17
Number('0b11') // 3
Number('0o11') // 9
Number('foo') // NaN
Number('100a') // NaN
规范
Specification |
Status |
Comment |
|---|---|---|
ECMAScript 1st Edition (ECMA-262) |
Standard |
Initial definition. Implemented in JavaScript 1.1. |
ECMAScript 5.1 (ECMA-262)The definition of 'Number' in that specification. |
Standard |
|
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'Number' in that specification. |
Standard |
New methods and properties added: EPSILON, isFinite, isInteger, isNaN, parseFloat, parseInt |
ECMAScript Latest Draft (ECMA-262)The definition of 'Number' in that specification. |
Living Standard |
|
浏览器兼容性
Feature |
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
|---|---|---|---|---|---|---|
Basic Support |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
Feature |
Android |
Chrome for Android |
Edge mobile |
Firefox for Android |
IE mobile |
Opera Android |
iOS Safari |
|---|---|---|---|---|---|---|---|
Basic Support |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
JavaScript 是一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的解释型语言。它已经由ECMA(欧洲电脑制造商协会)通过 ECMAScript 实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器( Chrome、IE、FireFox、Safari、Opera )支持。JavaScript 是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式等,不支持 I/O,比如网络
加载中,请稍侯......