Decrement (--)

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 Dekrement (--)-Operator dekrementiert (subtrahiert eins von) seinem Operanden und gibt den Wert vor oder nach dem Dekrement zurück, abhängig davon, wo der Operator platziert ist.

Probieren Sie es aus

let x = 3;
const y = x--;

console.log(`x:${x}, y:${y}`);
// Expected output: "x:2, y:3"

let a = 3;
const b = --a;

console.log(`a:${a}, b:${b}`);
// Expected output: "a:2, b:2"

Syntax

js
x--
--x

Beschreibung

Der ---Operator ist für zwei Arten von Operanden überladen: Zahl und BigInt. Er zwingt den Operanden zuerst in einen numerischen Wert um und prüft dann dessen Typ. Wenn der Operand zu einem BigInt wird, führt er die BigInt-Dekrementierung aus; ansonsten führt er die Dekrementierung für Zahlen durch.

Wenn der Operator als Postfix verwendet wird, also hinter dem Operanden (z. B. x--), dekrementiert der Operator und gibt den Wert vor dem Dekrementieren zurück.

Wenn der Operator als Präfix verwendet wird, also vor dem Operanden (z. B. --x), dekrementiert er und gibt den Wert nach dem Dekrementieren zurück.

Der Dekrement-Operator kann nur auf Operanden angewendet werden, die Referenzen sind (Variablen und Objekteigenschaften, d. h. gültige Zuweisungsziele). --x selbst wird zu einem Wert ausgewertet, nicht zu einer Referenz, sodass Sie keine Verkettung mehrerer Dekrement-Operatoren durchführen können.

js
--(--x); // SyntaxError: Invalid left-hand side expression in prefix operation

Beispiele

Postfix-Dekrement

js
let x = 3;
const y = x--;
// x is 2; y is 3

let x2 = 3n;
const y2 = x2--;
// x2 is 2n; y2 is 3n

Präfix-Dekrement

js
let x = 3;
const y = --x;
// x is 2; y = 2

let x2 = 3n;
const y2 = --x2;
// x2 is 2n; y2 is 2n

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-postfix-decrement-operator

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
Decrement (--)

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch