Inhaltsverzeichnis
Warum das Invoke-Each-Muster verwenden?
Heim Web-Frontend js-Tutorial Wie erstelle ich eine Funktion, die jede bereitgestellte Funktion mithilfe von JavaScript aufruft?

Wie erstelle ich eine Funktion, die jede bereitgestellte Funktion mithilfe von JavaScript aufruft?

Aug 24, 2023 pm 12:41 PM

如何使用 JavaScript 创建一个调用每个提供的函数的函数?

In JavaScript sind Funktionen erstklassige Objekte, was bedeutet, dass sie als Argumente an andere Funktionen übergeben werden können. Dies ist eine leistungsstarke Funktion, mit der einige interessante Muster erstellt werden können.

Ein solches Muster ist das "invoke-each"-Muster, bei dem eine Funktion erstellt wird, die jede bereitgestellte Funktion mithilfe der empfangenen Argumente aufruft.

Warum das Invoke-Each-Muster verwenden?

Es gibt mehrere Gründe, warum Sie das Invoke-Each-Muster verwenden möchten.

Erstens kann es dazu verwendet werden, die Details darüber zu abstrahieren, wie eine Reihe von Funktionen aufgerufen werden. Dies ist hilfreich, wenn die Funktion auf komplexe oder sich wiederholende Weise aufgerufen wird.

Zweitens kann damit eine Art „Pipeline“ erstellt werden, bei der die Ausgabe jeder Funktion als Eingabe an die nächste Funktion in der Kette übergeben wird. Dies ist eine bequeme Möglichkeit, eine Reihe von Aktionen aneinanderzureihen. Schließlich kann damit eine

„Tee“-Funktion erstellt werden, die mehrere Funktionen mit denselben Parametern aufruft und die Ergebnisse sammelt. Dies ist für die Protokollierung, das Debuggen oder andere Zwecke nützlich.

Wie implementiert man das Invoke-Each-Muster?

Es gibt verschiedene Möglichkeiten, den Aufruf jedes Musters zu implementieren.

Der einfachste Weg besteht darin, einfach die bereitgestellten Funktionen zu durchlaufen und jede Funktion mit den Argumenten aufzurufen -

function invokeEach(functions, args) {
   for (var i = 0; i < functions.length; i++) {
      functions[i].apply(null, args);
   }
}
Nach dem Login kopieren

Im obigen Code durchlaufen wir die Funktionen und rufen jede Funktion mit der Methode

Function.prototype.apply()

auf. Mit dieser Methode können wir eine Funktion mit einem bestimmten Wert- und Parameterarray aufrufen.

Wir verwenden hier die Methode apply()

, da dies eine praktische Möglichkeit ist, Parameter als Array zu übergeben. Sie können auch die Methode

Function.prototype.call() verwenden, mit der Sie Parameter als separate Werte übergeben können. Beispiel

Vollständiges Beispiel für einen funktionierenden Code unten.

<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      function foo(x) {
         document.getElementById("result").innerHTML = 'foo: ' + x;
      }
      function bar(x) {
         document.getElementById("result1").innerHTML = 'bar: ' + x;
      }
      function baz(x) {
         document.getElementById("result2").innerHTML = 'baz: ' + x;
      }
      function qux(x) {
         document.getElementById("result3").innerHTML ='qux: ' + x;
      }
      function invokeEach(functions, args) {
         for (var i = 0; i < functions.length; i++) {
            functions[i].apply(null, args);
         }
      }
      invokeEach([foo, bar, baz, qux], [5]);
   </script>
</body>
</html>
Nach dem Login kopieren
Wie Sie sehen können, definiert das obige Codebeispiel vier Funktionen:

foo(), bar(), baz(),

und

qux(). Diese Funktionen geben einfach eine Nachricht mit den bereitgestellten Argumenten aus. Als nächstes definieren wir die Funktion invokeEach()

, die ein Funktionsarray und ein Parameterarray akzeptiert. Diese Funktion durchläuft die bereitgestellten Funktionen und ruft jede Funktion mit den bereitgestellten Argumenten auf.

Schließlich rufen wir die Funktion invokeEach()

auf und übergeben dabei vier Funktionen und einen einzelnen Parameter 5. Dies führt erwartungsgemäß dazu, dass jede Funktion mit Argument 5 aufgerufen wird.

In diesem Tutorial haben wir uns das Invoke-Each-Muster in JavaScript angesehen. Mit diesem Muster kann eine Funktion erstellt werden, die jede bereitgestellte Funktion mit den empfangenen Argumenten aufruft.

Wir haben gelernt, wie man dieses Muster umsetzt und einige der Gründe, warum Sie es vielleicht verwenden möchten.

Das obige ist der detaillierte Inhalt vonWie erstelle ich eine Funktion, die jede bereitgestellte Funktion mithilfe von JavaScript aufruft?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ersetzen Sie Stringzeichen in JavaScript Ersetzen Sie Stringzeichen in JavaScript Mar 11, 2025 am 12:07 AM

Detaillierte Erläuterung der Methode für JavaScript -Zeichenfolge und FAQ In diesem Artikel werden zwei Möglichkeiten untersucht, wie String -Zeichen in JavaScript ersetzt werden: Interner JavaScript -Code und interne HTML für Webseiten. Ersetzen Sie die Zeichenfolge im JavaScript -Code Die direkteste Möglichkeit ist die Verwendung der Ersatz () -Methode: str = str.replace ("find", "ersetzen"); Diese Methode ersetzt nur die erste Übereinstimmung. Um alle Übereinstimmungen zu ersetzen, verwenden Sie einen regulären Ausdruck und fügen Sie das globale Flag G hinzu:: STR = Str.Replace (/fi

Wie erstelle ich meine eigenen JavaScript -Bibliotheken? Wie erstelle ich meine eigenen JavaScript -Bibliotheken? Mar 18, 2025 pm 03:12 PM

In Artikel werden JavaScript -Bibliotheken erstellt, veröffentlicht und aufrechterhalten und konzentriert sich auf Planung, Entwicklung, Testen, Dokumentation und Werbestrategien.

Wie optimiere ich den JavaScript -Code für die Leistung im Browser? Wie optimiere ich den JavaScript -Code für die Leistung im Browser? Mar 18, 2025 pm 03:14 PM

In dem Artikel werden Strategien zur Optimierung der JavaScript -Leistung in Browsern erörtert, wobei der Schwerpunkt auf die Reduzierung der Ausführungszeit und die Minimierung der Auswirkungen auf die Lastgeschwindigkeit der Seite wird.

Wie debugge ich den JavaScript -Code effektiv mithilfe von Browser -Entwickler -Tools? Wie debugge ich den JavaScript -Code effektiv mithilfe von Browser -Entwickler -Tools? Mar 18, 2025 pm 03:16 PM

In dem Artikel werden effektives JavaScript -Debuggen mithilfe von Browser -Entwickler -Tools, der Schwerpunkt auf dem Festlegen von Haltepunkten, der Konsole und der Analyse der Leistung erörtert.

10 Möglichkeiten, Ihre JQuery -Leistung sofort zu erhöhen 10 Möglichkeiten, Ihre JQuery -Leistung sofort zu erhöhen Mar 11, 2025 am 12:15 AM

Dieser Artikel beschreibt zehn einfache Schritte, um die Leistung Ihres Skripts erheblich zu steigern. Diese Techniken sind unkompliziert und für alle Fähigkeiten anwendbar. Bleiben Sie auf dem Laufenden: Verwenden Sie einen Paketmanager wie NPM mit einem Bundler wie Vite, um sicherzustellen

So bauen Sie einen einfachen JQuery Slider So bauen Sie einen einfachen JQuery Slider Mar 11, 2025 am 12:19 AM

In diesem Artikel werden Sie mit der JQuery -Bibliothek ein einfaches Bildkarousel erstellen. Wir werden die BXSLIDER -Bibliothek verwenden, die auf JQuery basiert und viele Konfigurationsoptionen zum Einrichten des Karussells bietet. Heutzutage ist Picture Carousel zu einem Muss auf der Website geworden - ein Bild ist besser als tausend Wörter! Nachdem Sie sich entschieden haben, das Bild -Karussell zu verwenden, ist die nächste Frage, wie Sie es erstellen. Zunächst müssen Sie hochwertige, hochauflösende Bilder sammeln. Als nächstes müssen Sie ein Bildkarousel mit HTML und einem JavaScript -Code erstellen. Es gibt viele Bibliotheken im Web, die Ihnen helfen können, Karussell auf unterschiedliche Weise zu erstellen. Wir werden die Open -Source -BXSLIDER -Bibliothek verwenden. Die BXSLIDER -Bibliothek unterstützt reaktionsschnelles Design, sodass das mit dieser Bibliothek gebaute Karussell an alle angepasst werden kann

Wie verwende ich Quellkarten zum Debuggen, um den JavaScript -Code zu debuggen? Wie verwende ich Quellkarten zum Debuggen, um den JavaScript -Code zu debuggen? Mar 18, 2025 pm 03:17 PM

In dem Artikel wird erläutert, wie Quellkarten zum Debuggen von JavaScript verwendet werden, indem er auf den ursprünglichen Code zurückgegeben wird. Es wird erläutert, dass Quellenkarten aktiviert, Breakpoints eingestellt und Tools wie Chrome Devtools und WebPack verwendet werden.

Verwenden Sie den Pass mit Folge und MySQL Verwenden Sie den Pass mit Folge und MySQL Mar 11, 2025 am 11:04 AM

FECKERIZE ist ein vielversprechender node.js orm. Es kann mit Postgresql, MySQL, Mariadb, SQLite und MSSQL verwendet werden. In diesem Tutorial werden wir die Authentifizierung für Benutzer einer Web -App implementieren. Und wir werden Passport verwenden, die beliebte Authentifizierung Middlew

See all articles