Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Logisches UND Zuweisung (&&=)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2020.
Derlogische UND Zuweisungsoperator (&&=) wertet nur den rechten Operanden aus und weist ihn dem linken zu, wenn der linke Operandtruthy ist.
In diesem Artikel
Probieren Sie es aus
let a = 1;let b = 0;a &&= 2;console.log(a);// Expected output: 2b &&= 2;console.log(b);// Expected output: 0Syntax
x &&= yBeschreibung
Die logische UND Zuweisungabgekürzt, bedeutet, dassx &&= y gleichwertig ist mitx && (x = y), außer dass der Ausdruckx nur einmal ausgewertet wird.
Es wird keine Zuweisung durchgeführt, wenn die linke Seite nicht truthy ist, aufgrund der Abkürzungslogik deslogischen UND Operators. Zum Beispiel wirft das Folgende keinen Fehler, obwohlx eineconst ist:
const x = 0;x &&= 2;Auch würde das Folgende den Setter nicht auslösen:
const x = { get value() { return 0; }, set value(v) { console.log("Setter called"); },};x.value &&= 2;Tatsächlich, wennx nicht truthy ist, wirdy überhaupt nicht ausgewertet.
const x = 0;x &&= console.log("y evaluated");// Logs nothingBeispiele
>Verwendung der logischen UND Zuweisung
let x = 0;let y = 1;x &&= 0; // 0x &&= 1; // 0y &&= 1; // 1y &&= 0; // 0Spezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-assignment-operators> |