„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Was bewirkt das Ausrufezeichen (!) in einem JavaScript-Funktionsausdruck?

Was bewirkt das Ausrufezeichen (!) in einem JavaScript-Funktionsausdruck?

Veröffentlicht am 26.12.2024
Durchsuche:658

What Does the Exclamation Mark (!) Do in a JavaScript Function Expression?

Den Zweck des Ausrufezeichens in einem Funktionsausdruck enthüllen

In JavaScript ist beim Ausführen von Code ein Ausrufezeichen (!) aufgetreten Eine Funktion kann einige Fragen aufwerfen. Schauen wir uns seine Funktionalität und seine Rolle in der Syntax genauer an.

Die Syntax von JavaScript schreibt vor, dass eine in der Form „function foo() {}“ deklarierte Funktion eine Funktionsdeklaration ist und zur Ausführung einen Aufruf erfordert. Durch die Vorverarbeitung einer Funktionsdeklaration mit einem Ausrufezeichen (!) wird diese jedoch in einen Funktionsausdruck umgewandelt, dem Klammern folgen können, um die Funktion sofort aufzurufen.

Der Code „!function foo() {}() " mag zunächst überflüssig erscheinen, da es eine Funktion deklariert, diese aber auch ausführt. Allerdings dient das Ausrufezeichen hier zwei Zwecken:

  • Konvertierung in einen Ausdruck: Es wandelt die Funktionsdeklaration in einen Funktionsausdruck um.
  • Implizit Aufruf: Wenn Klammern folgen, ruft das Ausrufezeichen die Funktion auf, sodass kein explizites Ausrufezeichen erforderlich ist Aufruf.

Obwohl es sich im Wesentlichen um einen syntaktischen Trick handelt, ermöglicht diese Technik eine präzise Syntax für sofort aufgerufene Funktionsausdrücke (IIFEs). Eine explizitere Form des Codes wäre: „(function(){})();“

Zuletzt wertet das Ausrufezeichen auch den Rückgabewert der Funktion aus und wandelt ihn in einen booleschen Wert um. Da IIFEs normalerweise keinen expliziten Wert zurückgeben, geben sie undefiniert zurück, was durch das Ausrufezeichen auf „true“ gesetzt wird. Dieses boolesche Ergebnis wird im Allgemeinen nicht verwendet.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3