Funktionsargumente neu anordnen

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 die rearg-Funktion in JavaScript erkunden, mit der wir die Reihenfolge der an eine Funktion übergebenen Argumente basierend auf angegebenen Indizes umordnen können. Wir werden lernen, wie wir die Array.prototype.map()-Methode und den Spread-Operator verwenden, um die Argumente zu transformieren und die ursprüngliche Funktion mit den umgeordneten Argumenten aufzurufen. Am Ende dieses Labs werden Sie gut verstehen, wie Sie die rearg-Funktion verwenden, um Funktionsargumente in JavaScript zu manipulieren.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/functions("Functions") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/AdvancedConceptsGroup -.-> javascript/closures("Closures") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") subgraph Lab Skills javascript/variables -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/data_types -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/arith_ops -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/comp_ops -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/functions -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/array_methods -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/closures -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/higher_funcs -.-> lab-28577{{"Funktionsargumente neu anordnen"}} javascript/spread_rest -.-> lab-28577{{"Funktionsargumente neu anordnen"}} end

Wie man in JavaScript Funktionsargumente neu anordnet

Um in JavaScript Funktionsargumente neu anzuordnen, kann man die rearg()-Funktion verwenden. Zunächst erstelle man eine Funktion, die die bereitgestellte Funktion mit ihren Argumenten aufruft, wobei die Argumente gemäß den angegebenen Indizes angeordnet sind. Man kann Array.prototype.map() verwenden, um die Argumente basierend auf indexes neu zu ordnen. Dann verwendet man den Spread-Operator (...), um die transformierten Argumente an fn zu übergeben.

Hier ist ein Beispiel, wie man die rearg()-Funktion verwendet:

const rearg =
  (fn, indexes) =>
  (...args) =>
    fn(...indexes.map((i) => args[i]));

In diesem Beispiel verwenden wir rearg(), um eine neue Funktion zu erstellen, die die Argumente einer anderen Funktion neu anordnet.

var rearged = rearg(
  function (a, b, c) {
    return [a, b, c];
  },
  [2, 0, 1]
);
rearged("b", "c", "a"); // ['a', 'b', 'c']

In dem obigen Code erstellen wir eine neue Funktion rearged, die die Argumente der Funktion function(a, b, c) { return [a, b, c]; } neu anordnet. Der indexes-Parameter gibt die Reihenfolge an, in der die Argumente neu angeordnet werden sollen. In diesem Fall möchten wir, dass das dritte Argument zuerst kommt, das erste Argument zweitens und das zweite Argument drittens kommt. Wenn wir rearged('b', 'c', 'a') aufrufen, wird ['a', 'b', 'c'] zurückgegeben, was das Ergebnis ist, wenn man die ursprüngliche Funktion mit den neu angeordneten Argumenten aufruft.

Zusammenfassung

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