Array bis zu einer Bedingung initialisieren

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 Initialisierung und Befüllung eines Arrays mit Werten, die von einer Funktion generiert werden, bis eine bestimmte Bedingung erfüllt ist, erkunden. Wir werden die initializeArrayUntil-Funktion verwenden, die zwei Argumente akzeptiert: conditionFn und mapFn. Durch dieses Lab werden Sie ein tieferes Verständnis dafür erlangen, wie diese Funktion verwendet wird, um Arrays mit benutzerdefinierten Werten und Bedingungen zu generieren.


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/loops("Loops") subgraph Lab Skills javascript/variables -.-> lab-28391{{"Array bis zu einer Bedingung initialisieren"}} javascript/data_types -.-> lab-28391{{"Array bis zu einer Bedingung initialisieren"}} javascript/arith_ops -.-> lab-28391{{"Array bis zu einer Bedingung initialisieren"}} javascript/comp_ops -.-> lab-28391{{"Array bis zu einer Bedingung initialisieren"}} javascript/loops -.-> lab-28391{{"Array bis zu einer Bedingung initialisieren"}} end

Wie man ein Array initialisiert, bis eine Bedingung erfüllt ist

Um mit der Programmierung zu beginnen, öffnen Sie das Terminal/SSH und geben Sie node ein.

Hier sind die Schritte, um ein Array zu initialisieren und mit Werten zu füllen, die von einer Funktion generiert werden, bis eine bestimmte Bedingung erfüllt ist:

  1. Erstellen Sie ein leeres Array arr, eine Indexvariable i und ein Element el.
  2. Verwenden Sie eine do...while-Schleife, um Elemente mit der mapFn-Funktion dem Array hinzuzufügen, bis die conditionFn-Funktion für den angegebenen Index i und das Element el true zurückgibt.
  3. Die conditionFn-Funktion nimmt drei Argumente entgegen: den aktuellen Index, das vorherige Element und das Array selbst.
  4. Die mapFn-Funktion nimmt drei Argumente entgegen: den aktuellen Index, das aktuelle Element und das Array selbst.

Hier ist der Code:

const initializeArrayUntil = (conditionFn, mapFn) => {
  const arr = [];
  let i = 0;
  let el = undefined;
  do {
    el = mapFn(i, el, arr);
    arr.push(el);
    i++;
  } while (!conditionFn(i, el, arr));
  return arr;
};

Um die initializeArrayUntil-Funktion zu verwenden, geben Sie als Argumente zwei Funktionen an:

initializeArrayUntil(
  (i, val) => val > 10, //conditionFn
  (i, val, arr) => (i <= 1 ? 1 : val + arr[i - 2]) //mapFn
); // [1, 1, 2, 3, 5, 8, 13]

Dieser Code initialisiert ein Array mit der Fibonacci-Folge bis zur ersten Zahl, die größer als 10 ist. Die conditionFn-Funktion überprüft, ob der aktuelle Wert größer als 10 ist, und die mapFn-Funktion generiert die nächste Zahl in der Sequenz.

Zusammenfassung

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