Das Begrenzen von Funktionsargumenten in JavaScript

JavaScriptJavaScriptBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden wir das Konzept der Function Arity in JavaScript erkunden. Ziel dieses Labs ist es, eine Higher-Order-Funktion zu erstellen, die eine Funktion und eine Zahl n als Argumente akzeptiert und eine neue Funktion zurückgibt, die nur bis zu n Argumente akzeptiert und alle weiteren ignoriert. Dies wird uns helfen, zu verstehen, wie man die Anzahl der an eine Funktion übergebenen Argumente in JavaScript begrenzen kann.

Dies ist ein Guided Lab, das schrittweise Anweisungen bietet, um Ihnen beim Lernen und Üben zu helfen. Befolgen Sie die Anweisungen sorgfältig, um jeden Schritt abzuschließen und praktische Erfahrungen zu sammeln. Historische Daten zeigen, dass dies ein Labor der Stufe Anfänger mit einer Abschlussquote von 87% ist. Es hat eine positive Bewertungsrate von 100% von den Lernenden erhalten.

Wie man eine Funktion mit einer bestimmten Anzahl von Argumenten erstellt

Um eine Funktion zu erstellen, die eine bestimmte Anzahl von Argumenten akzeptiert und alle weiteren Argumente ignoriert, folgen Sie diesen Schritten:

  1. Öffnen Sie das Terminal/SSH und geben Sie node ein, um mit der Codeausführung zu beginnen.

  2. Verwenden Sie den folgenden Code, um Ihre Funktion zu erstellen:

const ary =
  (fn, n) =>
  (...args) =>
    fn(...args.slice(0, n));
  1. Rufen Sie die gerade erstellte Funktion ary mit zwei Argumenten auf: die Funktion, für die Sie die Anzahl der Argumente begrenzen möchten (fn), und die Anzahl der Argumente, auf die Sie sie begrenzen möchten (n).

  2. Nun können Sie die neue Funktion verwenden, um die Anzahl der Argumente für jede beliebige Funktion zu begrenzen. Dazu rufen Sie Ihre neue Funktion mit dem Spread-Operator (...) und den Argumenten auf, die Sie begrenzen möchten.

Hier ist ein Beispiel, wie Sie Ihre neue Funktion verwenden können:

const firstTwoMax = ary(Math.max, 2);
[[2, 6, "a"], [6, 4, 8], [10]].map((x) => firstTwoMax(...x)); // [6, 6, 10]

In diesem Beispiel ist firstTwoMax eine neue Funktion, die die Math.max-Funktion auf die Akzeptanz von nur den ersten zwei Argumenten begrenzt. Die map-Methode wird verwendet, um die neue Funktion auf jedes Array in der äußeren Array anzuwenden und das Maximum der ersten beiden Elemente jedes inneren Arrays zurückzugeben.

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Lab zu Function Arity abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.