Number.MIN_SAFE_INTEGER
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2015 browserübergreifend verfügbar.
Die statische Dateneigenschaft Number.MIN_SAFE_INTEGER repräsentiert die kleinste sichere Ganzzahl in JavaScript, also -(253 - 1).
Um kleinere Ganzzahlen darzustellen, sollten Sie BigInt verwenden.
Probieren Sie es aus
const x = Number.MIN_SAFE_INTEGER - 1;
const y = Number.MIN_SAFE_INTEGER - 2;
console.log(Number.MIN_SAFE_INTEGER);
// Expected output: -9007199254740991
console.log(x);
// Expected output: -9007199254740992
console.log(x === y);
// Expected output: true
Wert
-9007199254740991 (-9.007.199.254.740.991 oder etwa -9 Billiarden).
Eigenschaften von Number.MIN_SAFE_INTEGER | |
|---|---|
| Schreibbar | nein |
| Aufzählbar | nein |
| Konfigurierbar | nein |
Beschreibung
Das Gleitkommaformat mit doppelter Genauigkeit verfügt nur über 52 Bit zur Darstellung der Mantisse. Daher kann es nur Ganzzahlen zwischen -(253 – 1) und 253 – 1 sicher darstellen. „Sicher“ bedeutet in diesem Zusammenhang, dass Ganzzahlen exakt dargestellt und korrekt miteinander verglichen werden können. Beispielsweise ergibt Number.MIN_SAFE_INTEGER - 1 === Number.MIN_SAFE_INTEGER - 2 den Wert true, was mathematisch falsch ist. Weitere Informationen finden Sie unter Number.isSafeInteger().
Wie unter Number.EPSILON erläutert, hängt die Genauigkeit von Zahlen von ihrer Größenordnung ab. Number.MIN_SAFE_INTEGER bezeichnet den kleinsten Wert, bei dem Operationen auf Ganzzahlebene präzise ausgeführt werden können. Auch mit kleineren Zahlen lassen sich noch sinnvolle Berechnungen durchführen, allerdings ohne Genauigkeit auf Ganzzahlebene. Die größte in JavaScript darstellbare Zahl ist Number.MAX_VALUE mit ungefähr 1,7976931348623157 × 10308.
Da MIN_SAFE_INTEGER eine statische Eigenschaft von Number ist, verwenden Sie sie immer als Number.MIN_SAFE_INTEGER und nicht als Eigenschaft eines Zahlenwerts.
Beispiele
>MIN_SAFE_INTEGER verwenden
Number.MIN_SAFE_INTEGER; // -9007199254740991
-(2 ** 53 - 1); // -9007199254740991
Spezifikationen
| Spezifikation |
|---|
| ECMAScript® 2027 Language Specification> # sec-number.min_safe_integer> |