Объект 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.
Методы
Number.isNaN()- Определяет, является ли переданнное значение значением
NaN. Number.isFinite()- Определяет, является ли переданное значение конечным числом.
Number.isInteger()- Определяет, является ли тип переданного значения «числом», а само число — целым значением.
Number.isSafeInteger()- Определяет, является ли переданное значение безопасным целым числом (числом в диапазоне от
-(253 - 1)до253 - 1). Number.toInteger()Использовался для вычисления переданного значения и преобразования его в целое число (или бесконечностьInfinity), но был удалён.Number.parseFloat()- Представляет собой тот же самый метод, что и метод
parseFloatглобального объекта. Number.parseInt()- Представляет собой тот же самый метод, что и метод
parseIntглобального объекта.
Экземпляры объекта 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().
Object:Примеры
Пример: использование объекта 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');
console.log(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 (ECMA-262) Определение 'Number' в этой спецификации. |
Живой стандарт |
Совместимость с браузерами
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Компьютеры | Мобильные | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Number | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 3 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
EPSILON | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 25 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 25 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
MAX_SAFE_INTEGER | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 31 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 31 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
MAX_VALUE | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 4 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
MIN_SAFE_INTEGER | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 31 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 31 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
MIN_VALUE | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 4 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
NaN | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 4 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
NEGATIVE_INFINITY | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 4 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
Number() constructor | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 3 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
POSITIVE_INFINITY | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 4 | Opera Полная поддержка 3 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
isFinite | Chrome Полная поддержка 19 | Edge Полная поддержка 12 | Firefox Полная поддержка 16 | IE Нет поддержки Нет | Opera Полная поддержка 15 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 25 | Firefox Android Полная поддержка 16 | Opera Android Полная поддержка 14 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 1.5 | nodejs Полная поддержка 0.10 |
isInteger | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 16 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 16 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
isNaN | Chrome Полная поддержка 25 | Edge Полная поддержка 12 | Firefox Полная поддержка 15 | IE Нет поддержки Нет | Opera Полная поддержка 15 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 25 | Firefox Android Полная поддержка 15 | Opera Android Полная поддержка 14 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 1.5 | nodejs Полная поддержка 0.10 |
isSafeInteger | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 32 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 10 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 32 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 10 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
parseFloat | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 25 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 25 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
parseInt | Chrome Полная поддержка 34 | Edge Полная поддержка 12 | Firefox Полная поддержка 25 | IE Нет поддержки Нет | Opera Полная поддержка 21 | Safari Полная поддержка 9 | WebView Android Полная поддержка ≤37 | Chrome Android Полная поддержка 34 | Firefox Android Полная поддержка 25 | Opera Android Полная поддержка 21 | Safari iOS Полная поддержка 9 | Samsung Internet Android Полная поддержка 2.0 | nodejs Полная поддержка 0.12 |
toExponential | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 5.5 | Opera Полная поддержка 7 | Safari Полная поддержка 2 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
toFixed | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 5.5 | Opera Полная поддержка 7 | Safari Полная поддержка 2 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
toLocaleString | Chrome Полная поддержка 1 | Edge
Полная поддержка
12
| Firefox Полная поддержка 1 | IE
Полная поддержка
5
| Opera Полная поддержка 4 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
toPrecision | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 5.5 | Opera Полная поддержка 7 | Safari Полная поддержка 2 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
toSource | Chrome Нет поддержки Нет | Edge Нет поддержки Нет | Firefox
Нет поддержки
1 — 74
| IE Нет поддержки Нет | Opera Нет поддержки Нет | Safari Нет поддержки Нет | WebView Android Нет поддержки Нет | Chrome Android Нет поддержки Нет | Firefox Android Полная поддержка 4 | Opera Android Нет поддержки Нет | Safari iOS Нет поддержки Нет | Samsung Internet Android Нет поддержки Нет | nodejs Нет поддержки Нет |
toString | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 3 | Opera Полная поддержка 4 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
valueOf | Chrome Полная поддержка 1 | Edge Полная поддержка 12 | Firefox Полная поддержка 1 | IE Полная поддержка 4 | Opera Полная поддержка 4 | Safari Полная поддержка 1 | WebView Android Полная поддержка 1 | Chrome Android Полная поддержка 18 | Firefox Android Полная поддержка 4 | Opera Android Полная поддержка 10.1 | Safari iOS Полная поддержка 1 | Samsung Internet Android Полная поддержка 1.0 | nodejs Полная поддержка 0.1.100 |
Легенда
- Полная поддержка
- Полная поддержка
- Нет поддержки
- Нет поддержки
- Нестандартная. Ожидается плохая кросс-браузерная поддержка.
- Нестандартная. Ожидается плохая кросс-браузерная поддержка.
- Смотрите замечания реализации.
- Смотрите замечания реализации.