Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie schneidet die Kurzschlussbewertung von JavaScript im Vergleich zum C#-Ansatz ab?

Susan Sarandon
Freigeben: 2024-11-26 12:26:10
Original
915 Leute haben es durchsucht

How Does JavaScript's Short-Circuit Evaluation Compare to C#'s Approach?

Kurzschlussauswertung in JavaScript: Ein Vergleich mit C

JavaScript verwendet das Konzept der „Kurzschlussauswertung“, ähnlich dem &&-Operator in C#. Diese Bewertungsmethode priorisiert die Leistung der Bedingung auf der linken Seite des Operators, bevor mit der Bewertung der Bedingung auf der rechten Seite fortgefahren wird.

Kurzschlussbewertung von JavaScript

Um die Kurzschlussauswertung in JavaScript zu demonstrieren, betrachten wir das folgende Beispiel:

if (true || foo.foo){
    // Passes, no errors because foo isn't defined.
}
Nach dem Login kopieren

In diesem Szenario wertet JavaScript den ersten aus Bedingung, was wahr ist. Da der || Wenn der Operator ein logisches ODER darstellt, wird der Gesamtausdruck als wahr ausgewertet, ohne dass die zweite Bedingung ausgewertet werden muss, die auf die nicht vorhandene Eigenschaft foo.foo verweist. Dieses Verhalten sorgt für eine effiziente Ressourcenzuweisung, indem unnötige Berechnungen vermieden werden.

Workaround für C#

C# unterstützt nativ keine Kurzschlussauswertung, aber ein vergleichbares Verhalten kann mit erreicht werden der bedingte Operator:

if ((bool1) ? true : bool2)
Nach dem Login kopieren

Wenn in diesem Fall bool1 „true“ ergibt, wird der Ausdruck ohne Ausführung als „true“ ausgewertet bool2. Es ist jedoch anzumerken, dass dieser Ansatz nicht mit der Kurzschlussauswertung von JavaScript identisch ist, da der Bedingungsoperator beide Ausdrücke auswertet, wenn auch später.

Das obige ist der detaillierte Inhalt vonWie schneidet die Kurzschlussbewertung von JavaScript im Vergleich zum C#-Ansatz ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage