Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Exponentialer Zuweisungsoperator (**=)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since März 2017.
Der **exponentielle Zuweisungsoperator (**=)** führt dieExponenzierung auf den beiden Operanden durch und weist das Ergebnis dem linken Operanden zu.
In diesem Artikel
Probieren Sie es aus
let a = 3;console.log((a **= 2));// Expected output: 9console.log((a **= 0));// Expected output: 1console.log((a **= "hello"));// Expected output: NaNSyntax
js
x **= yBeschreibung
x **= y ist äquivalent zux = x ** y, mit dem Unterschied, dass der Ausdruckx nur einmal ausgewertet wird.
Beispiele
>Exponentielle Zuweisung mit Zahlen
js
let bar = 5;bar **= 2; // 25Andere Nicht-BigInt-Werte werden in Zahlen umgewandelt:
js
let baz = 5;baz **= "foo"; // NaNExponentielle Zuweisung mit BigInts
js
let foo = 3n;foo **= 2n; // 9nfoo **= 1; // TypeError: Cannot mix BigInt and other types, use explicit conversionsSpezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-assignment-operators> |