[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger [Back]  [Original]

Number.isSafeInteger() - JavaScript | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

Number.isSafeInteger()

Baseline Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit September 2015 browserbergreifend verfgbar.

Die Number.isSafeInteger() statische Methode bestimmt, ob der angegebene Wert eine Zahl ist, die ein sicherer Integer ist.

In diesem Artikel

Probieren Sie es aus

function warn(x) {
  if (Number.isSafeInteger(x)) {
    return "Precision safe.";
  }
  return "Precision may be lost!";
}

console.log(warn(2 ** 53));
// Expected output: "Precision may be lost!"

console.log(warn(2 ** 53 - 1));
// Expected output: "Precision safe."

Syntax

js
Number.isSafeInteger(testValue)

Parameter

testValue

Der Wert, der darauf getestet werden soll, ob er ein sicherer Integer ist.

Rckgabewert

Der boolesche Wert true, wenn der angegebene Wert eine Zahl ist, die ein sicherer Integer ist. Andernfalls false.

Beschreibung

Die sicheren Integer umfassen alle Ganzzahlen von -(253 - 1) bis 253 - 1 einschlielich (9.007.199.254.740.991). Ein sicherer Integer ist ein Integer, der:

  • genau als IEEE-754-Doppelprzisionszahl dargestellt werden kann und
  • dessen IEEE-754-Darstellung nicht das Ergebnis der Rundung einer anderen Ganzzahl ist, um in die IEEE-754-Darstellung zu passen.

Zum Beispiel ist 253 - 1 ein sicherer Integer: Er kann genau dargestellt werden, und keine andere Ganzzahl wird unter irgendeinem IEEE-754-Rundungsmodus auf ihn gerundet. Im Gegensatz dazu ist 253 kein sicherer Integer: Er kann genau in IEEE-754 dargestellt werden, aber die Ganzzahl 253 + 1 kann nicht direkt in IEEE-754 dargestellt werden, sondern wird stattdessen bei Rundung auf den nchsten und Rundung auf Null auf 253 gerundet.

Um Werte grer oder kleiner als ~9 Billiarden mit voller Przision zu handhaben, ist die Verwendung einer Arbitrary-Precision-Arithmetik-Bibliothek erforderlich. Siehe Was jeder Programmierer ber Gleitkommaarithmetik wissen muss fr weitere Informationen zu Gleitkommadarstellungen von Zahlen.

Fr grere Ganzzahlen sollten Sie den BigInt-Typ in Betracht ziehen.

Beispiele

Verwendung von isSafeInteger()

js
Number.isSafeInteger(3); // true
Number.isSafeInteger(2 ** 53); // false
Number.isSafeInteger(2 ** 53 - 1); // true
Number.isSafeInteger(NaN); // false
Number.isSafeInteger(Infinity); // false
Number.isSafeInteger("3"); // false
Number.isSafeInteger(3.1); // false
Number.isSafeInteger(3.0); // true

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-number.issafeinteger

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page