This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

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 ⁨сентябрь 2015 г.⁩.

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

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

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

const x = Number.MAX_SAFE_INTEGER + 1;
const y = Number.MAX_SAFE_INTEGER + 2;

console.log(Number.MAX_SAFE_INTEGER);
// Expected output: 9007199254740991

console.log(x);
// Expected output: 9007199254740992

console.log(x === y);
// Expected output: true

Значение

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

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

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

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

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

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

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