Heim > Web-Frontend > js-Tutorial > Was bewirkt das Ausrufezeichen (!) in einem JavaScript-Funktionsausdruck?

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

Barbara Streisand
Freigeben: 2024-12-27 06:54:09
Original
617 Leute haben es durchsucht

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

Enthüllung des Zwecks des Ausrufezeichens in einem Funktionsausdruck

In JavaScript wird beim Ausführen von Code ein Ausrufezeichen (!) angezeigt 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.

Das obige ist der detaillierte Inhalt vonWas bewirkt das Ausrufezeichen (!) in einem JavaScript-Funktionsausdruck?. 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