Number

Объект Number является объектом-обёрткой, позволяющей вам работать с числовыми значениями. Объект Number создаётся через конструктор Number().

Синтаксис

new Number(value); 
var a = new Number('123'); // a === 123 is false
var b = Number('123'); // b === 123 is true
a instanceof Number; // is true
b instanceof Number; // is false

Параметры

value
Числовое значение, которое примет объект после создания.

Описание

Несколько замечаний относительно использования объекта Number:

  • Если аргумент не может быть преобразован в число, возвращается NaN.
  • В неконструкторном контексте (то есть, без оператора new), объект Number может использоваться для проведения преобразования типов.

Свойства

Number.EPSILON
Наименьший интервал между двумя представимыми числами.
Number.MAX_SAFE_INTEGER
Максимальное целое число, которое можно безопасно использовать в JavaScript (253 - 1).
Number.MAX_VALUE
Наибольшее представимое положительное число.
Number.MIN_SAFE_INTEGER
Минимальное целое число, которое можно безопасно использовать в (-(253 - 1)).
Number.MIN_VALUE
Наименьшее представимое положительное число — то есть, самое близкое к нулю положительное число (которое ещё не является нулём).
Number.NaN
Специальное значение для представления «не числа».
Number.NEGATIVE_INFINITY
Специальное значение для представления отрицательной бесконечности; возвращается при переполнении.
Number.POSITIVE_INFINITY
Специальное значение для представления положительной бесконечности; возвращается при переполнении.
Number.prototype
Позволяет добавлять свойства к объекту Number.
Свойства, унаследованные из Function:

Методы

Number.isNaN()
Определяет, является ли переданнное значение значением NaN.
Number.isFinite()
Определяет, является ли переданное значение конечным числом.
Number.isInteger()
Определяет, является ли тип переданного значения «числом», а само число — целым значением.
Number.isSafeInteger()
Определяет, является ли переданное значение безопасным целым числом (числом в диапазоне от -(253 - 1) до 253 - 1).
Number.toInteger()
Использовался для вычисления переданного значения и преобразования его в целое число (или бесконечность Infinity), но был удалён.
Number.parseFloat()
Представляет собой тот же самый метод, что и метод parseFloat глобального объекта.
Number.parseInt()
Представляет собой тот же самый метод, что и метод parseInt глобального объекта.
Методы, унаследованные из Function:

Экземпляры объекта Number

Все экземпляры объекта Number наследуются от Number.prototype. Объект прототипа конструктора Number может быть изменён, чтобы затронуть все экземпляры объекта Number.

Методы

Number.prototype.toExponential()
Возвращает строку, представляющую число в экспоненциальной записи.
Number.prototype.toFixed()
Возвращает строку, представляющую число в записи с фиксированной запятой.
Number.prototype.toLocaleString()
Возвращает строку с языко-зависимым представлением числа. Переопределяет метод Object.prototype.toLocaleString().
Number.prototype.toPrecision()
Возвращает строку, представляющую число с указанной точностью в экспоненциальной записи, либо записи с фиксированной запятой.
Number.prototype.toSource()
Возвращает объектный литерал, представляющий объект Number; вы можете использовать это значение для создания нового объекта. Переопределяет метод Object.prototype.toSource().
Number.prototype.toString()
Возвращает строку, представляющую указанный объект по указанному основанию системы счисления. Переопределяет метод Object.prototype.toString().
Number.prototype.valueOf()
Возвращает примитивное значение указанного объекта. Переопределяет метод Object.prototype.valueOf().

Примеры

Пример: использование объекта 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

Следующий пример показывает, какие минимальное и максимальное целочисленные значения может представить объект Number (за подробностями обращайтесь к стандарту EcmaScript, главе 8.5 Тип Number):

var biggestInt = 9007199254740992;
var smallestInt = -9007199254740992;

При разборе данных, сериализованных в JSON, можно ожидать, что целые значения, выпадающие из этого диапазона будут повреждены, когда парсер JSON приведёт их к типу Number. Возможным обходным путём может быть использование объекта String.

Пример: использование Number для преобразования объекта Date

В следующем примере объект Date преобразуется в числовое значение с использование объекта Number в качестве функции:

var d = new Date('December 17, 1995 03:24:00');
print(Number(d));

Пример выведет "819199440000".

Пример: преобразование строк с числами в числа

Number('123')     // 123
Number('')        // 0
Number('0x11')    // 17
Number('0b11')    // 3
Number('0o11')    // 9
Number('foo')     // NaN
Number('100a')    // NaN

Спецификации

Спецификация Статус Комментарии
ECMAScript 1st Edition (ECMA-262) Стандарт Изначальное определение. Реализована в JavaScript 1.1.
ECMAScript 5.1 (ECMA-262)
Определение 'Number' в этой спецификации.
Стандарт  
ECMAScript 2015 (6th Edition, ECMA-262)
Определение 'Number' в этой спецификации.
Стандарт Добавлены новые методы и свойства: (EPSILON, isFinite, isInteger, isNaN, parseFloat и parseInt)
ECMAScript Latest Draft (ECMA-262)
Определение 'Number' в этой спецификации.
Черновик  

Совместимость с браузерами

Update compatibility data on GitHub
КомпьютерыМобильныеServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidFirefox для AndroidOpera для AndroidSafari on iOSSamsung InternetNode.js
NumberChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 3Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
EPSILONChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 25IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 9WebView Android Полная поддержка ≤37Chrome Android Полная поддержка 34Firefox Android Полная поддержка 25Opera Android Полная поддержка 21Safari iOS Полная поддержка 9Samsung Internet Android Полная поддержка 2.0nodejs Полная поддержка 0.12
MAX_SAFE_INTEGERChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 31IE Нет поддержки НетOpera Полная поддержка ДаSafari Полная поддержка 9WebView Android Полная поддержка ДаChrome Android Полная поддержка 34Firefox Android Полная поддержка 31Opera Android Полная поддержка ДаSafari iOS Полная поддержка 9Samsung Internet Android Полная поддержка Даnodejs Полная поддержка 0.12
MAX_VALUEChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
MIN_SAFE_INTEGERChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 31IE Нет поддержки НетOpera Полная поддержка ДаSafari Полная поддержка 9WebView Android Полная поддержка ДаChrome Android Полная поддержка 34Firefox Android Полная поддержка 31Opera Android Полная поддержка ДаSafari iOS Полная поддержка 9Samsung Internet Android Полная поддержка Даnodejs Полная поддержка 0.12
MIN_VALUEChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
NaNChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
NEGATIVE_INFINITYChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
POSITIVE_INFINITYChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
isFiniteChrome Полная поддержка 19Edge Полная поддержка 12Firefox Полная поддержка 16IE Нет поддержки НетOpera Полная поддержка 15Safari Полная поддержка 9WebView Android Полная поддержка ДаChrome Android Полная поддержка 25Firefox Android Полная поддержка 16Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка Даnodejs Полная поддержка 0.10
isIntegerChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 16IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка ДаWebView Android Полная поддержка ≤37Chrome Android Полная поддержка 34Firefox Android Полная поддержка 16Opera Android Полная поддержка 21Safari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 2.0nodejs Полная поддержка 0.12
isNaNChrome Полная поддержка 25Edge Полная поддержка 12Firefox Полная поддержка 15IE Нет поддержки НетOpera Полная поддержка ДаSafari Полная поддержка 9WebView Android Полная поддержка ДаChrome Android Полная поддержка 25Firefox Android Полная поддержка 15Opera Android Полная поддержка ДаSafari iOS Полная поддержка 9Samsung Internet Android Полная поддержка Даnodejs Полная поддержка 0.10
isSafeIntegerChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 32IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 10WebView Android Полная поддержка ≤37Chrome Android Полная поддержка 34Firefox Android Полная поддержка 32Opera Android Полная поддержка 21Safari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 2.0nodejs Полная поддержка 0.12
parseFloatChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 25IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 9WebView Android Полная поддержка ≤37Chrome Android Полная поддержка 34Firefox Android Полная поддержка 25Opera Android Полная поддержка 21Safari iOS Полная поддержка 9Samsung Internet Android Полная поддержка 2.0nodejs Полная поддержка 0.12
parseIntChrome Полная поддержка 34Edge Полная поддержка 12Firefox Полная поддержка 25IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 9WebView Android Полная поддержка ≤37Chrome Android Полная поддержка 34Firefox Android Полная поддержка 25Opera Android Полная поддержка 21Safari iOS Полная поддержка 9Samsung Internet Android Полная поддержка 2.0nodejs Полная поддержка 0.12
prototypeChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 3Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
toExponentialChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 5.5Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
toFixedChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 5.5Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
toInteger
УстаревшаяНестандартная
Chrome Нет поддержки НетEdge Нет поддержки НетFirefox Нет поддержки 16 — 32IE Нет поддержки НетOpera Нет поддержки НетSafari Нет поддержки НетWebView Android Нет поддержки НетChrome Android Нет поддержки НетFirefox Android Нет поддержки 16 — 32Opera Android Нет поддержки НетSafari iOS Нет поддержки НетSamsung Internet Android Нет поддержки Нетnodejs Нет поддержки Нет
toLocaleStringChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 5Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
toPrecisionChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 5.5Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
toSource
Нестандартная
Chrome Нет поддержки НетEdge Нет поддержки НетFirefox Полная поддержка 1IE Нет поддержки НетOpera Нет поддержки НетSafari Нет поддержки НетWebView Android Нет поддержки НетChrome Android Нет поддержки НетFirefox Android Полная поддержка 4Opera Android Нет поддержки НетSafari iOS Нет поддержки НетSamsung Internet Android Нет поддержки Нетnodejs Нет поддержки Нет
toStringChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 3Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да
valueOfChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да

Легенда

Полная поддержка  
Полная поддержка
Нет поддержки  
Нет поддержки
Нестандартная. Ожидается плохая кросс-браузерная поддержка.
Нестандартная. Ожидается плохая кросс-браузерная поддержка.
Устаревшая. Не следует использовать в новых веб-сайтах
Устаревшая. Не следует использовать в новых веб-сайтах

Смотрите также

  • NaN
  • Глобальный объект Math