Number.MAX_SAFE_INTEGER

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Статическое свойство Number.MAX_SAFE_INTEGER представляет максимальное безопасное целочисленное значение в JavaScript (253 – 1).

Для бо́льших целых чисел используется BigInt.

Интерактивный пример

Значение

9007199254740991 (9,007,199,254,740,991 или приблизительно 9 квадриллионов).

Атрибуты свойства Number.MAX_SAFE_INTEGER
Записываемоенет
Перечисляемоенет
Настраиваемоенет

Описание

Формат чисел с плавающей запятой двойной точности имеет только 52 бита для представления мантиссы, поэтому он может безопасно представлять целые числа в диапазоне от -(253 – 1) до 253 – 1. «Безопасность» в этом контексте означает способность точно представлять целые числа и правильно их сравнивать. Например, Number.MAX_SAFE_INTEGER + 1 === Number.MAX_SAFE_INTEGER + 2 будет иметь истинное значение, что математически неверно. Больше информации в Number.isSafeInteger().

Поскольку MAX_SAFE_INTEGER является статическим свойством объекта Number, вы всегда должны использовать его как Number.MAX_SAFE_INTEGER, а не как свойство числового значения.

Примеры

Значение MAX_SAFE_INTEGER

js
Number.MAX_SAFE_INTEGER; // 9007199254740991

Связь между MAX_SAFE_INTEGER и EPSILON

Number.EPSILON — это 2-52, а MAX_SAFE_INTEGER — это (253 – 1), оба значения являются производными от размера мантиссы, который составляет 53 бита (при этом старший бит всегда равен 1). Их умножение даст значение, очень близкое (но не равное) 2.

js
Number.MAX_SAFE_INTEGER * Number.EPSILON; // 1.9999999999999998

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

Specification
ECMAScript® 2025 Language Specification
# sec-number.max_safe_integer

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

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
MAX_SAFE_INTEGER

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

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