Arrays sind eine der wichtigsten Datenstrukturen in der Programmierung. Sie ermöglichen es Ihnen, mehrere Werte in einer Variablen zu speichern und mithilfe von Indizes darauf zuzugreifen.
Wenn Sie alle Zahlen außer bestimmten Zahlen ausgeben müssen, können Sie die Bedingung ( array) verwenden[i] !== number ). In diesem Fall enthält die Variable number den Wert einer Zahl, die nicht abgeleitet werden soll.
Wie man bestimmte Zahlen aus einem Array ableitet: Nützliche Tipps und Codebeispiele
Manchmal müssen Sie bei der Arbeit mit Arrays nur bestimmte Zahlen ausgeben. Es kann notwendig sein, alle positiven Zahlen oder nur gerade Zahlen abzuleiten. In diesem Artikel werden hilfreiche Tipps und Codebeispiele behandelt, die Ihnen bei der Lösung dieser Probleme helfen.
1. Filtern eines Arrays mit einer Schleife
Eine Möglichkeit, bestimmte Zahlen aus einem Array abzuleiten, besteht darin, durch eine Schleife durch das gesamte Array zu gehen und die gewünschten Elemente zu filtern. Zum Beispiel, wenn wir nur positive Zahlen ableiten wollen:
let numbers = [-2, -1, 0, 1, 2, 3, 4, 5];let positiveNumbers = [];for(let i = 0; i < numbers.length; i++) 0) >console.log(positiveNumbers);
2. Verwenden der filter() -Methode
In JavaScript gibt es eine filter() -Methode, mit der Sie ein Array filtern können, ohne Schleifen zu verwenden. Anwendungsbeispiel:
let numbers = [-2, -1, 0, 1, 2, 3, 4, 5];let positiveNumbers = numbers.filter(function(number) 0;>);console.log(positiveNumbers);
Das Ergebnis ist das gleiche wie im vorherigen Beispiel.
3. Filtern eines Arrays nach Bedingung
Wenn wir eine komplexe Bedingung zum Filtern eines Arrays haben, können wir komplexere Funktionen innerhalb der filter() -Methode verwenden. Zum Beispiel, wenn wir nur gerade Zahlen ausgeben wollen:
let numbers = [-2, -1, 0, 1, 2, 3, 4, 5];let evenNumbers = numbers.filter(function(number) );console.log(evenNumbers);
Definieren und Verwenden der Filter() -Funktion
JavaScript verfügt über eine nützliche Funktion filter() , mit der Sie das Array einfach filtern und ein neues Array mit Elementen zurückgeben können, die eine bestimmte Bedingung erfüllen.
Die Funktion filter() akzeptiert eine Prädikatfunktion als Argument, die die Filterbedingungen definiert. Das Prädikat muss true oder false zurückgeben, je nachdem, ob das aktuelle Array-Element mit der angegebenen Bedingung übereinstimmt.
Beispiel für die Verwendung der filter() -Funktion :
const numbers = [12345678910]; const evenNumbers = numbers.filter(function(number) < return number % 2 === 0; >); console.log(evenNumbers);
In diesem Beispiel erstellen wir ein neues evenNumbers- Array, das nur gerade Zahlen aus dem ursprünglichen numbers- Array enthält. Die Prädikatfunktion prüft, ob das aktuelle Element ohne Rest durch 2 geteilt wird, und gibt die entsprechende Bedingung zurück.
Die Funktion filter() erstellt und gibt ein neues Array zurück, ohne das ursprüngliche Array zu ändern. Wenn kein Element die angegebenen Bedingungen erfüllt, gibt die Funktion ein leeres Array zurück.
Die Verwendung der filter() -Funktion kann den Code erheblich vereinfachen und reduzieren, wenn Sie bestimmte Elemente basierend auf bestimmten Bedingungen aus einem Array auswählen möchten.
Mit der map() -Methode in JavaScript können Sie die angegebene Funktion auf jedes Element eines Arrays anwenden und ein neues Array mit den Ergebnissen dieser Funktion zurückgeben.
const numbers = [12345678910]; const evenNumbers = numbers.map(function(number) < if (number % 2 === 0) < return number; >>); console.log(evenNumbers); // [2, 4, 6, 8, 10]
Die an die map() -Methode übergebene Funktion prüft jede Zahl auf Parität, und wenn die Zahl gerade ist, wird sie dem neuen evenNumbers-Array hinzugefügt.
Wenn Sie die map() -Methode zusammen mit einer geeigneten Bedingung verwenden, können Sie einfach nur bestimmte Zahlen aus dem Array ableiten und das gewünschte Ergebnis erhalten.
Beispielcode mit einer for-Schleife
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];const desiredNumbers = [];for (let i = 0; i < numbers.length; i++) >console.log(desiredNumbers);
In diesem Beispiel erstellen wir ein Numbers- Array, das die Zahlen 1 bis 10 enthält. Dann erstellen wir ein leeres desiredNumbers-Array, in das wir nur die benötigten Zahlen einfügen werden.
Als nächstes verwenden wir eine for-Schleife, um alle Elemente des numbers-Arrays zu durchlaufen. Überprüfen Sie in jeder Iteration, ob die Zahl mit dem Operator % gerade ist. Wenn die Zahl gerade ist, fügen Sie sie mit der push() -Methode dem desiredNumbers-Array hinzu.
Verwenden der bedingten if-Anweisung zum Filtern von Zahlen
Sie können eine bedingte if-Anweisung in Verbindung mit einer for-Schleife oder der filter() -Methode verwenden, um bestimmte Zahlen aus einem Array zu filtern.
let numbers = [1, -2, 3, -4, 5];for (let i = 0; i < numbers.length; i++) 0) >
Durch die Ausführung dieses Codes werden die Zahlen 1, 3 und 5 abgeleitet, da sie positiv sind.
Sie können auch die filter() -Methode verwenden, um Zahlen zu filtern. Hier ist ein Beispiel:
let numbers = [1, -2, 3, -4, 5];let positiveNumbers = numbers.filter(function(number) 0;>);console.log(positiveNumbers);
Als Ergebnis dieses Codes wird ein neues Array ausgegeben, das nur positive Zahlen enthält [1, 3, 5]. Die filter() -Methode gibt ein neues Array zurück, das nur die Elemente enthält, für die die Prädikatsfunktion true zurückgibt.
Mit der bedingten if-Anweisung können Sie Zahlen in einem Array nach bestimmten Kriterien filtern und verschiedene Aktionen mit ihnen ausführen.
Bewährte Methoden zur Codeoptimierung und Leistungssteigerung
| Empfehlung | Die Beschreibung |
|---|---|
| Verwenden Sie Zyklen mit Vorbedingung | Eine der schnellsten Möglichkeiten, ein Array zu verarbeiten, besteht darin, eine Schleife mit einer Vorbedingung zu verwenden (z. B. eine while-Schleife). Bei diesem Ansatz wird der Index innerhalb der Schleife nicht überprüft, was die Anzahl der Vorgänge reduziert und die Ausführungsgeschwindigkeit erhöht. |
| Vermeiden Sie verschachtelte Schleifen | Wenn Sie zwei oder mehr Arrays verarbeiten müssen, vermeiden Sie verschachtelte Schleifen. Stattdessen können Sie eine Schleife mit mehreren Indizes verwenden, um die CPU-Auslastung zu reduzieren. |
| Verwenden Sie Algorithmen, die die Datenmenge schrittweise erhöhen | Wenn Sie die ungefähre Anzahl von Elementen kennen, die aus dem Array abgeleitet werden müssen, können Sie Algorithmen verwenden, die die Anzahl der zu überprüfenden Elemente schrittweise erhöhen. Sie können beispielsweise beginnen, indem Sie jedes zehnte Element, dann jedes fünfte Element und so weiter überprüfen, um die Ausführungszeit zu verkürzen. |
| Optimieren Sie die Speichernutzung | Versuchen Sie beim Arbeiten mit Arrays, nur die erforderliche Menge an Speicher zu verwenden. Erstellen Sie keine zusätzlichen temporären Variablen, vermeiden Sie es, Daten erneut in den Speicher zu kopieren und so weiter. Dies wird dazu beitragen, die Speicherkosten zu senken und die Programmausführung zu beschleunigen. |
Die Einhaltung dieser Richtlinien hilft Ihnen, Ihren Code zu optimieren und die Leistung zu verbessern. Es ist wichtig sich daran zu erinnern, dass Sie bei der Codeoptimierung die Besonderheiten Ihrer spezifischen Aufgabe berücksichtigen und die am besten geeigneten Ansätze zur Lösung des Problems auswählen müssen.