Letzte N Übereinstimmungen finden

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 des Findens der letzten n Elemente, die eine gegebene Bedingung erfüllen, in einem Array erkunden. Wir werden lernen, wie man eine for-Schleife verwendet, um durch das Array zu iterieren und eine bereitgestellte Funktion auf jedes Element auszuführen. Wir werden auch lernen, wie man die Array.prototype.unshift()-Methode verwendet, um passende Elemente am Anfang des Ergebnissesarrays anzufügen und es zurückzugeben, sobald die gewünschte Länge erreicht ist.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL 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/cond_stmts("Conditional Statements") javascript/BasicConceptsGroup -.-> javascript/loops("Loops") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/BasicConceptsGroup -.-> javascript/obj_manip("Object Manipulation") subgraph Lab Skills javascript/variables -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/data_types -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/arith_ops -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/comp_ops -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/cond_stmts -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/loops -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/array_methods -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} javascript/obj_manip -.-> lab-28307{{"Letzte N Übereinstimmungen finden"}} end

Anweisungen zum Finden der letzten N Übereinstimmungen

Um die letzten n Elemente zu finden, die einer bestimmten Bedingung entsprechen, 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 die unten bereitgestellte findLastN-Funktion.
  3. Geben Sie ein Array arr und eine matcher-Funktion an, die für die Elemente, die Sie zu treffen möchten, einen wahren Wert zurückgibt.
  4. Optional können Sie auch die Anzahl n der Übereinstimmungen angeben, die Sie zurückgeben möchten (Standardwert ist 1).
  5. Die Funktion wird die matcher-Funktion für jedes Element von arr mithilfe einer for-Schleife von hinten beginnend ausführen.
  6. Wenn ein Element der matcher-Bedingung entspricht, wird es mithilfe von Array.prototype.unshift() zum Ergebnissarray hinzugefügt, was die Elemente am Anfang des Arrays einfügt.
  7. Wenn die Länge des Ergebnissarrays gleich n ist, wird die Funktion das Ergebnis zurückgeben.
  8. Wenn es keine Übereinstimmungen gibt oder n größer ist als die Anzahl der Übereinstimmungen, wird ein leeres Array zurückgegeben.
const findLastN = (arr, matcher, n = 1) => {
  let res = [];
  for (let i = arr.length - 1; i >= 0; i--) {
    const el = arr[i];
    const match = matcher(el, i, arr);
    if (match) res.unshift(el);
    if (res.length === n) return res;
  }
  return res;
};

Hier sind einige Beispiele für die Verwendung der findLastN-Funktion:

findLastN([1, 2, 4, 6], (n) => n % 2 === 0, 2); // [4, 6]
findLastN([1, 2, 4, 6], (n) => n % 2 === 0, 5); // [2, 4, 6]

Zusammenfassung

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