Wann sind Klammern in JavaScript-Funktionsaufrufen wichtig?
Nov 25, 2024 pm 02:56 PMKlammern in Funktionsdeklarationen vs. Aufrufen
In JavaScript erscheint der Unterschied zwischen Funktionsdeklarationen und -aufrufen in ihrer Syntax. Während Funktionsdeklarationen mit geschweiften Klammern enden, enden Funktionsaufrufe mit Klammern.
Betrachten Sie das folgende Beispiel:
var myFunction = function() { setTimeout(myFunction, 1000); } myFunction();
Hier erwartet die Funktion setTimeout eine Funktionsreferenz als Argument. Wenn Sie myFunction schreiben, verweisen Sie auf die Funktion selbst. Im Gegensatz dazu ruft myFunction() die Funktion tatsächlich auf.
Obwohl dies einfach erscheint, gibt es Ausnahmen. setTimeout kann auch eine Funktion akzeptieren, die eine Funktion zurückgibt, wie im folgenden Code:
function myFunction() { return function() { alert("ohai"); } } // or const myFunction = () => () => alert("ohai");
In diesem Szenario würde setTimeout(myFunction(), 1000) Folgendes tun:
- Rufen Sie die Funktion „myFunction“ auf und speichern Sie ihren Rückgabewert.
- Rufen Sie die Funktion „myFunction“ ab zurückgegeben.
Dadurch wird effektiv eine Warnung geplant, die jede Sekunde angezeigt wird.
Der Hauptunterschied besteht daher darin, dass Sie beim Weglassen von Klammern auf das Funktionsobjekt selbst verweisen. Wenn Sie Klammern einfügen, rufen Sie die Funktion auf. Dies gilt für Funktionsdeklarationen wie var myFunction = function() { ... } und Funktionsausdrücke wie const myFunction = () => { ... }.
Das obige ist der detaillierte Inhalt vonWann sind Klammern in JavaScript-Funktionsaufrufen wichtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Ersetzen Sie Stringzeichen in JavaScript

Benutzerdefinierte Google -Search -API -Setup -Tutorial

8 atemberaubende JQuery -Seiten -Layout -Plugins

Erstellen Sie Ihre eigenen AJAX -Webanwendungen

10 JavaScript & JQuery MVC -Tutorials
