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 (/) erzeugt den Quotienten seiner Operanden, wobei der linke Operand der Dividend und der rechte Operand der Divisor ist.

Probieren Sie es aus

console.log(12 / 2);
// Expected output: 6

console.log(3 / 2);
// Expected output: 1.5

console.log(6 / "3");
// Expected output: 2

console.log(2 / 0);
// Expected output: Infinity

Syntax

js
x / y

Beschreibung

Der / Operator ist für zwei Typen von Operanden überladen: Nummer und BigInt. Er zwingt zunächst beide Operanden in numerische Werte und überprüft die Typen von ihnen. Er führt eine BigInt-Division durch, wenn beide Operanden BigInts werden; andernfalls erfolgt eine Nummern-Division. Ein TypeError wird ausgelöst, wenn ein Operand zu einem BigInt und der andere zu einer Nummer wird.

Bei der BigInt-Division ist das Ergebnis der Quotient der beiden Operanden, der gegen null abgerundet wird, wobei der Rest verworfen wird. Ein RangeError wird ausgelöst, wenn der Divisor y 0n ist. Dies liegt daran, dass die Division durch null bei Nummern Infinity oder -Infinity ergibt, aber BigInt 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 zu Zahlen gezwungen:

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

Sie können BigInt- und nummerische Operanden nicht in der Division 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 entweder den einen oder den anderen Operanden:

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

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-multiplicative-operators

Browser-Kompatibilität

Siehe auch