Division (/)

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Der Divisionsoperator (/) liefert den Quotienten seiner Operanden, wobei der linke Operand der Dividend und der rechte Operand der Divisor ist.

Probieren Sie es aus

Syntax

js
x / y

Beschreibung

Der / Operator ist für zwei Typen von Operanden überladen: number und BigInt. Er folgt der Konvertierung beider Operanden zu numerischen Werten und prüft deren Typen. Es wird eine BigInt-Division durchgeführt, wenn beide Operanden BigInts werden; andernfalls wird eine Zahlendivision durchgeführt. Ein TypeError wird ausgelöst, wenn ein Operand zu einem BigInt wird, der andere jedoch zu einer Zahl.

Bei der BigInt-Division ist das Ergebnis der Quotient der beiden Operanden, abgerundet in Richtung Null, und der Rest wird verworfen. Ein RangeError wird ausgelöst, wenn der Divisor y 0n ist. Dies liegt daran, dass die Division von Zahlen durch Null Infinity oder -Infinity ergibt, BigInt jedoch kein Konzept von Unendlichkeit hat.

Beispiele

Division mit Zahlen

js
1 / 2; // 0.5
Math.floor(3 / 2); // 1
1.0 / 2.0; // 0.5

2 / 0; // Infinity
2.0 / 0.0; // Infinity, because 0.0 === 0
2.0 / -0.0; // -Infinity

Andere nicht-BigInt-Werte werden in Zahlen umgewandelt:

js
5 / "2"; // 2.5
5 / "foo"; // NaN

Division mit BigInts

js
1n / 2n; // 0n
5n / 3n; // 1n
-1n / 3n; // 0n
1n / -3n; // 0n

2n / 0n; // RangeError: BigInt division by zero

Man kann BigInt- und Zahlenoperanden in der Division nicht mischen.

js
2n / 2; // TypeError: Cannot mix BigInt and other types, use explicit conversions
2 / 2n; // TypeError: Cannot mix BigInt and other types, use explicit conversions

Um eine Division mit einem BigInt und einem Nicht-BigInt durchzuführen, konvertieren Sie einen der Operanden:

js
2n / BigInt(2); // 1n
Number(2n) / 2; // 1

Spezifikationen

Specification
ECMAScript Language Specification
# sec-multiplicative-operators

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch