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

Number() Konstruktor - 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() Konstruktor

Baseline Weitgehend verfgbar

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

Der Number() Konstruktor erstellt Number Objekte. Bei Aufruf als Funktion gibt er primitive Werte des Typs Number zurck.

In diesem Artikel

Syntax

js
new Number(value)
Number(value)

Hinweis: Number() kann mit oder ohne new aufgerufen werden, aber mit unterschiedlichen Effekten. Siehe Rckgabewert.

Parameter

value

Der numerische Wert des zu erstellenden Objekts.

Rckgabewert

Wenn Number() als Funktion aufgerufen wird (ohne new), gibt es value in einen Zahl-Primitive umgewandelt zurck. Insbesondere werden BigInts-Werte in Zahlen umgewandelt, anstatt einen Fehler auszulsen. Wenn value fehlt, wird es zu 0.

Wenn Number() als Konstruktor aufgerufen wird (mit new), verwendet es den oben beschriebenen Umwandlungsprozess und gibt ein umhllendes Number Objekt zurck, das kein Primitive ist.

Warnung: Sie sollten Number selten als Konstruktor verwenden.

Beispiele

Number-Objekte erstellen

js
const a = new Number("123"); // a === 123 is false
const b = Number("123"); // b === 123 is true
a instanceof Number; // is true
b instanceof Number; // is false
typeof a; // "object"
typeof b; // "number"

Verwendung von Number(), um ein BigInt in eine Zahl zu konvertieren

Number() ist der einzige Fall, bei dem ein BigInt ohne Fehler in eine Zahl konvertiert werden kann, da es sehr explizit ist.

js
+1n; // TypeError: Cannot convert a BigInt value to a number
0 + 1n; // TypeError: Cannot mix BigInt and other types, use explicit conversions
js
Number(1n); // 1

Beachten Sie, dass dies zu einem Przisionsverlust fhren kann, wenn das BigInt zu gro ist, um sicher dargestellt zu werden.

js
BigInt(Number(2n ** 54n + 1n)) === 2n ** 54n + 1n; // false

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-number-constructor

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page