Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Number : propriété statique MIN_SAFE_INTEGER

Baseline Large disponibilité

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2015.

La propriété statique Number.MIN_SAFE_INTEGER représente le nombre entier sûr minimal en JavaScript, ou -(253 - 1).

Pour les entiers plus petits, envisagez d'utiliser le type BigInt.

Exemple interactif

const x = Number.MIN_SAFE_INTEGER - 1;
const y = Number.MIN_SAFE_INTEGER - 2;

console.log(Number.MIN_SAFE_INTEGER);
// Sortie attendue : -9007199254740991

console.log(x);
// Sortie attendue : -9007199254740992

console.log(x === y);
// Sortie attendue : true

Valeur

-9007199254740991 (-9 007 199 254 740 991, ou environs -9 quadrillions).

Attributs de Number : propriété statique MIN_SAFE_INTEGER
ÉcrivableNon
ÉnumérableNon
ConfigurableNon

Description

Le format de nombre à virgule flottante double précision (angl.) n'a que 52 bits pour représenter la mantisse, il ne peut donc représenter en toute sécurité que les entiers compris entre -(253 - 1) et 253 - 1. « Sûr » dans ce contexte fait référence à la capacité de représenter exactement les entiers et de les comparer correctement. Par exemple, Number.MIN_SAFE_INTEGER - 1 === Number.MIN_SAFE_INTEGER - 2 est évalué à true, ce qui est mathématiquement incorrect. Voir Number.isSafeInteger() pour plus d'informations.

Comme mentionné dans Number.EPSILON, la précision des nombres dépend de leur magnitude. Number.MIN_SAFE_INTEGER représente la plus petite valeur pour laquelle les opérations au niveau des entiers peuvent être effectuées avec précision, mais vous pouvez toujours effectuer des calculs significatifs sur des nombres plus petits, simplement sans précision au niveau des entiers. Le plus grand nombre représentable en JavaScript est en fait Number.MAX_VALUE, qui est approximativement 1,7976931348623157 × 10308.

Puisque MIN_SAFE_INTEGER est une propriété statique de Number, vous l'utilisez toujours comme Number.MIN_SAFE_INTEGER, plutôt que comme une propriété d'une valeur numérique.

Exemples

Utiliser MIN_SAFE_INTEGER

js
Number.MIN_SAFE_INTEGER; // -9007199254740991
-(2 ** 53 - 1); // -9007199254740991

Spécifications

Spécification
ECMAScript® 2027 Language Specification
# sec-number.min_safe_integer

Compatibilité des navigateurs

Voir aussi