Unäres Plus (+)
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 unäre Plus-Operator (+
) steht vor seinem Operanden und bewertet diesen Operanden, versucht jedoch, ihn in eine Zahl umzuwandeln, falls er nicht bereits eine ist.
Probieren Sie es aus
const x = 1;
const y = -1;
console.log(+x);
// Expected output: 1
console.log(+y);
// Expected output: -1
console.log(+"");
// Expected output: 0
console.log(+true);
// Expected output: 1
console.log(+false);
// Expected output: 0
console.log(+"hello");
// Expected output: NaN
Syntax
+x
Beschreibung
Obwohl unäre Negation (-
) auch Nicht-Zahlen umwandeln kann, ist unäres Plus die schnellste und bevorzugte Methode, um etwas in eine Zahl umzuwandeln, da es keine weiteren Operationen an der Zahl durchführt.
Unäres Plus führt dieselben Schritte wie die normale Zahlenumwandlung aus, die von den meisten eingebauten Methoden, die Zahlen erwarten, verwendet wird. Es kann Zeichenfolgenrepräsentationen von Ganzzahlen und Fließkommazahlen sowie die Nicht-Zeichenfolgenwerte true
, false
und null
umwandeln. Ganzzahlen im Dezimal- und Hexadezimalformat (mit 0x
-Präfix) werden unterstützt. Negative Zahlen werden unterstützt (jedoch nicht für Hexadezimalzahlen). Falls ein bestimmter Wert nicht geparst werden kann, wird er zu NaN
ausgewertet. Im Gegensatz zu anderen arithmetischen Operatoren, die sowohl mit Zahlen als auch mit BigInts arbeiten, wirft die Verwendung des +
Operators auf BigInt-Werten einen TypeError
.
Beispiele
Nutzung mit Zahlen
const x = 1;
const y = -1;
console.log(+x);
// 1
console.log(+y);
// -1
Nutzung mit Nicht-Zahlen
+true // 1
+false // 0
+null // 0
+[] // 0
+function (val) { return val; } // NaN
+1n // throws TypeError: Cannot convert BigInt value to number
Spezifikationen
Specification |
---|
ECMAScript® 2026 Language Specification # sec-unary-plus-operator |