Gibt es einen Null-Koaleszenz-Operator in Javascript?
In C# kann ich zum Beispiel Folgendes tun:
String someString = null;
var whatIWant = someString ?? "Cookies!";
Die beste Annäherung, die ich für Javascript herausfinden kann, ist die Verwendung des Bedingungsoperators:
var someString = null;
var whatIWant = someString ? someString : 'Cookies!';
Was IMHO ziemlich eklig ist. Kann ich es besser machen?
39 Stimmen
Anmerkung aus dem Jahr 2018:
x ?? y
Die Syntax befindet sich jetzt im Stadium 1 des Vorschlags - Nullische Verschmelzung4 Stimmen
Es gibt jetzt eine Babel-Plugin die genau diese Syntax enthält.
11 Stimmen
Anmerkung aus dem Jahr 2019: Jetzt ist der Status Stufe 3!
2 Stimmen
Anmerkung von später im Jahr 2019: Nullish Coalescing ist in TypeScript 3.7 verfügbar!
5 Stimmen
Hinweis ab Januar 2020: Der Nullish Coalescing Operator ist nativ in Firefox 72 verfügbar, der optionale Chaining Operator jedoch noch nicht.
6 Stimmen
Der nullische Koaleszenzoperator (
x ?? y
) und optionaler Verkettungsoperator (user.address?.street
) sind nun beide Stufe 4. Hier finden Sie eine gute Beschreibung, was das bedeutet: 2ality.com/2015/11/tc39-process.html#stage-4%3A-finished .