Array in zwei teilen

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 untersuchen, wie man ein Array mithilfe von JavaScript in zwei separate Arrays aufteilt, basierend auf der Wahrheit eines bereitgestellten Funktionswertes für jedes Element. Wir werden die Array.prototype.reduce()-Methode verwenden, um zwei Arrays zu erstellen, und die Array.prototype.push()-Methode, um Elemente an das passende Array hinzuzufügen, basierend auf der Wahrheit des bereitgestellten Funktionswertes. Am Ende dieses Labs werden Sie ein starkes Verständnis dafür haben, wie man ein Array in JavaScript aufteilt, und können dieses Wissen in Ihren zukünftigen Projekten anwenden.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced 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/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") javascript/AdvancedConceptsGroup -.-> javascript/destr_assign("Destructuring Assignment") subgraph Lab Skills javascript/variables -.-> lab-28540{{"Array in zwei teilen"}} javascript/data_types -.-> lab-28540{{"Array in zwei teilen"}} javascript/arith_ops -.-> lab-28540{{"Array in zwei teilen"}} javascript/comp_ops -.-> lab-28540{{"Array in zwei teilen"}} javascript/higher_funcs -.-> lab-28540{{"Array in zwei teilen"}} javascript/destr_assign -.-> lab-28540{{"Array in zwei teilen"}} end

Wie man ein Array anhand einer Funktion in zwei teilt

Um ein Array anhand einer bereitgestellten Funktion in zwei zu teilen, 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 Array.prototype.reduce(), um ein Array aus zwei Arrays zu erstellen.
  3. Verwenden Sie Array.prototype.push(), um Elemente, für die fn true zurückgibt, der ersten und Elemente, für die fn false zurückgibt, der zweiten Array hinzuzufügen.

Hier ist der Code, den Sie verwenden können:

const partition = (arr, fn) =>
  arr.reduce(
    (acc, val, i, arr) => {
      acc[fn(val, i, arr) ? 0 : 1].push(val);
      return acc;
    },
    [[], []]
  );

Um diesen Code zu testen, können Sie folgendes Beispiel verwenden:

const users = [
  { user: "barney", age: 36, active: false },
  { user: "fred", age: 40, active: true }
];
partition(users, (o) => o.active);
// [
//   [{ user: 'fred', age: 40, active: true }],
//   [{ user: 'barney', age: 36, active: false }]
// ]

Dies wird ein Array aus zwei Arrays zurückgeben, wobei das erste Array alle Elemente enthält, für die die bereitgestellte Funktion true zurückgibt, und das zweite Array alle Elemente enthält, für die die bereitgestellte Funktion false zurückgibt.

Zusammenfassung

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