Number
        
        
          
                Baseline
                
                  Widely available
                
                
              
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
Значения Number представляют числа с плавающей запятой, такие как 37 или -9,25.
Конструктор Number содержит константы и методы для работы с числами. Значения других типов могут быть преобразованы в числа с помощью функции Number().
Описание
Чаще всего числа представляются в виде прямой записи, например 255 или 3.14159. В разделе «Лексический синтаксис» есть более подробное описание.
255; // двести пятьдесят пять
255.0; // такое же число
255 === 255.0; // true
255 === 0xff; // true (шестнадцатеричная запись)
255 === 0b11111111; // true (двоичная запись)
255 === 0.255e3; // true (десятичная экспоненциальная запись)
В JavaScript литерал числа (например, 37) является значением с плавающей запятой, а не целым числом. Нет отдельного типа для представления целых значений. В JavaScript есть тип BigInt, но он не предназначен для замены Number для постоянного использования. Поэтому 37 это число, а не BigInt.
При использовании в качестве функции Number(value) преобразует строку или другое значение к числовому типу. Если значение не может быть преобразовано, то она вернёт NaN.
Number("123"); // вернёт число 123
Number("123") === 123; // true
Number("unicorn"); // NaN
Number(undefined); // NaN
Конструктор
Number()- 
Создаёт новое значение
Number. 
Когда Number вызывается в качестве конструктора (с ключевым словом new), он создаёт объект Number, который не является примитивом. Например, typeof new Number(42) === "object" и new Number(42) !== 42 (при этом new Number(42) == 42).
Предупреждение:
Как правило вам не нужно использовать Number в качестве конструктора.
Статические свойства
Number.EPSILON- 
Наименьший интервал между двумя представимыми числами.
 Number.MAX_SAFE_INTEGER- 
Максимальное целое число, которое можно безопасно использовать в JavaScript (253 - 1).
 Number.MAX_VALUE- 
Наибольшее представимое положительное число.
 Number.MIN_SAFE_INTEGER- 
Минимальное целое число, которое можно безопасно использовать в JavaScript (-(253 - 1)).
 Number.MIN_VALUE- 
Наименьшее представимое положительное число, то есть самое близкое к нулю положительное число (которое ещё не является нулём).
 Number.NaN- 
Специальное значение для представления значений, не являющихся числом.
 Number.NEGATIVE_INFINITY- 
Специальное значение для представления отрицательной бесконечности. Возвращается при переполнении.
 Number.POSITIVE_INFINITY- 
Специальное значение для представления бесконечности. Возвращается при переполнении.
 
Статические методы
Number.isFinite()- 
Определяет, является ли переданное значение конечным числом.
 Number.isInteger()- 
Определяет, является ли переданное значение целым числом.
 Number.isNaN()- 
Определяет, является ли переданное значение значением
NaN. Number.isSafeInteger()- 
Определяет, является ли переданное значение безопасным целым числом (в диапазоне от -(253 - 1) до 253 - 1).
 Number.parseFloat()- 
То же самое, что и глобальная функция
parseFloat(). Number.parseInt()- 
То же самое, что и глобальная функция
parseInt(). 
Свойства экземпляра
Эти свойства определены в Number.prototype и есть у всех экземпляров Number.
Number.prototype.constructor- 
Функция-конструктор, создающая экземпляр объекта. Для экземпляров
Numberначальным значением является конструкторNumber. 
Методы экземпляра
Number.prototype.toExponential()- 
Возвращает строку, представляющую число в экспоненциальной записи.
 Number.prototype.toFixed()- 
Возвращает строку, представляющую число в записи с фиксированной точкой.
 Number.prototype.toLocaleString()- 
Возвращает строку с зависимым от языка представлением этого числа. Переопределяет метод
Object.prototype.toLocaleString(). Number.prototype.toPrecision()- 
Возвращает строку, представляющую число с заданной точностью в формате с фиксированной точкой или экспоненциальной записи.
 Number.prototype.toString()- 
Возвращает строку, представляющую указанный объект с указанным основании. Переопределяет метод
Object.prototype.toString(). Number.prototype.valueOf()- 
Возвращает примитивное значение указанного объекта. Переопределяет метод
Object.prototype.valueOf(). 
Примеры
>Использование объекта Number для присваивания значений числовым переменным
    В следующем примере свойства объекта Number используются для присваивания значений числовым переменным:
const biggestNum = Number.MAX_VALUE;
const smallestNum = Number.MIN_VALUE;
const infiniteNum = Number.POSITIVE_INFINITY;
const negInfiniteNum = Number.NEGATIVE_INFINITY;
const notANum = Number.NaN;
Целочисленный диапазон для объекта Number
    Следующий пример показывает, какие минимальное и максимальное целочисленные значения может представить объект Number.
const biggestInt = Number.MAX_SAFE_INTEGER; // (2**53 - 1) => 9007199254740991
const smallestInt = Number.MIN_SAFE_INTEGER; // -(2**53 - 1) => -9007199254740991
При разборе сериализованных в JSON данных можно ожидать, что целочисленные значения, выходящие за пределы этого диапазона, будут повреждены, если анализатор JSON приведет их к типу Number.
Возможный обходной путь — использовать вместо этого String.
Большие числа могут быть представлены с использованием типа BigInt.
Использование Number() для преобразования объекта Date
    В следующем примере объект Date преобразуется в числовое значение с использованием объекта Number в качестве функции:
const d = new Date("1995-12-17T03:24:00");
console.log(Number(d));
Это выведет 819199440000.
Преобразование строк и null в числа
Number("123"); // 123
Number("123") === 123; // true
Number("12.3"); // 12.3
Number("12.00"); // 12
Number("123e-1"); // 12.3
Number(""); // 0
Number(null); // 0
Number("0x11"); // 17
Number("0b11"); // 3
Number("0o11"); // 9
Number("foo"); // NaN
Number("100a"); // NaN
Number("-Infinity"); // -Infinity
Спецификации
| Specification | 
|---|
| ECMAScript® 2026 Language Specification> # sec-number-objects>  | 
            
Совместимость с браузерами
Loading…