Heim  >  Artikel  >  Web-Frontend  >  Kann der ternäre Operator von Javascript Null-Koaleszenzoperatoren ersetzen?

Kann der ternäre Operator von Javascript Null-Koaleszenzoperatoren ersetzen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-02 08:37:02243Durchsuche

Can Javascript's Ternary Operator Replace Null-Coalescing Operators?

Ternärer bedingter Operator von Javascript als Alternative zu Null-Koaleszenzoperatoren

In Javascript kann der logische Operator „OR“ (||) dies tun als rudimentärer Nullkoaleszenzoperator verwendet werden. Um beispielsweise der Variable displayName einen Standardwert zuzuweisen, wenn user.name null oder false ist:

<code class="javascript">displayName = user.name || "Anonymous";</code>

Javascript unterstützt jedoch nicht nativ den sicheren Navigationsoperator (?.), der in anderen Sprachen zu finden ist.

Alternative Syntax mit CoffeeScript

Wenn Sie die Ausdruckskraft von Elvis-Operatoren und eine sichere Navigation suchen, sollten Sie CoffeeScript als Alternative zu Javascript verwenden. Es bietet mehrere Kurzschreibweisen, um ähnliche Effekte zu erzielen:

Elvis-Operator-Äquivalent:

<code class="coffeescript">displayName = user?.name || "Anonymous"</code>

Sichere Navigation-Operator-Äquivalent:

<code class="coffeescript">streetName = lottery.drawWinner?().address?.zipcode</code>

Zusätzliche CoffeeScript-Funktionen:

  • Existenzieller Operator (?->): Stellt sicher, dass eine Eigenschaft existiert, bevor auf sie zugegriffen wird.
  • Funktionsverknüpfungen ( ()->): Deklariert Pfeilfunktionen prägnant.
  • Sexy Funktionsaufruf: Ermöglicht Funktionsaufrufe ohne Klammern.

Hinweis: CoffeeScript kann zwar verbessert werden Ausdruckskraft erfordert eine Kompilierung oder einen Aufruf über