在线文档教程

Number

Number

JavaScript 的Number 对象是经过封装的能让你处理数字值的对象。Number对象由 Number()构造器创建。

语法

new Number(value

参数

value被创建对象的数字值。

描述

Number对象主要用于:

  • 如果参数无法被转换为数字,则返回 NaN

  • 在非构造器上下文中 (如:没有 new 操作符),Number 能被用来执行类型转换。

属性

Number.EPSILON两个可表示(representable)数之间的最小间隔。

方法

Number.isNaN()确定传递的值是否是 NaN。

Number 实例

所有Number实例都继承自Number.prototype被修改的 Number构造器的原型对象对全部Number实例都生效。

方法

Number.prototype.toExponential()Returns a string representing the number in exponential notation.

示例

使用 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

规范

SpecificationStatusComment
ECMAScript 1st Edition (ECMA-262)StandardInitial 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.StandardNew methods and properties added: EPSILON, isFinite, isInteger, isNaN, parseFloat, parseInt
ECMAScript Latest Draft (ECMA-262)The definition of 'Number' in that specification.Living Standard

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)