Mithilfe von Array -Methoden suchen Sie Arrays in JavaScript durch Arrays?

Mithilfe von Array -Methoden suchen Sie Arrays in JavaScript durch Arrays?
Wenn Sie mit Programmiersprachen arbeiten, arbeiten Sie häufig mit verschiedenen Arten von Daten, die in Array -Variablen platziert sind. JavaScript ist nicht anders, wenn es darum geht, Daten in Arrays zu verwenden. Die triviale Methode, um Daten innerhalb der Arrays zu durchsuchen für Schleife. In JavaScript gibt es jedoch verschiedene Methoden, die den Prozess der Suche durch ein Array erleichtern.

Wir werden einige Methoden übersehen, die uns helfen, nach einem Element in einem Array zu suchen. Diese Methoden sind:

  • inklusive ()
  • Index von()
  • finden()
  • Filter()

Um alle Methoden in diesem Tutorial zu testen, werden wir ein Array mit verschiedenen Elementen erstellen:

Array = ["Google", 13, 66, "Dies ist ein langer Satz", "Tisch und Stuhl"];

Der .Include () Methode

Wenn Sie ein Array durchgehen möchten, um die Frage zu beantworten: „Gibt es dieses Element in diesem Array oder nicht?”Sie verwenden die .Include () Methode. Die Art und Weise, wie das .inklusive () Die Methode funktioniert, dass sie jedes Element im Array nach einer Übereinstimmung durchsucht und wenn es eine Übereinstimmung findet, die es zurückgibt WAHR Andernfalls wird falsch zurückgegeben.

Syntax von .Include () Methode

arr.inklusive (elem);

Rückgabewert: Ein boolescher Wert

Beispiel
Jetzt, wo wir unser Array haben:

Array = ["Google", 13, 66, "Dies ist ein langer Satz", "Tisch und Stuhl"];

Versuchen wir zu finden, ob ein Element „Google“ darin enthalten ist, indem wir die folgende Codezeile verwenden:

Konsole.Protokoll (Array.enthält ("google"));

Die Ausgabe ist:

Es kehrt zurück WAHR, was bedeutet, dass das Element, nach dem wir gesucht haben, tatsächlich im Array vorhanden ist.

Zeit zu überprüfen, ob die Nummer 23 in unserem Array vorhanden ist oder nicht. Wir können nach dem Befehl nach 23 suchen:

Konsole.log (arr.inklusive (23));

Wir erhalten die Ausgabe:

Es gab falsch zurück, was bedeutet, dass im Array kein solches Element vorhanden ist.

Der .Indexof () Methode

Der Index von() Methode funktioniert ähnlich wie die inklusive () Methode, aber ein subtiler Unterschied zwischen diesen beiden Funktionen ist, dass die Index von() Die Methode durchsucht das Array nach dem gewünschten Element und gibt seinen Indexwert zurück, anstatt nur einen booleschen Wert zurückzugeben. Wenn im Array kein solches Element vorhanden ist, gibt es den Indexwert von zurück -1.

Syntax von .Indexof () Methode
Die Syntax der .Index von() Methode ist ziemlich einfach. Es ist:

arr.Indexof (Elem);

Rückgabewert: Index des Elements im Array.

Beispiel
Das Array nehmen: erklärt:

Array = ["Google", 13, 66, "Dies ist ein langer Satz", "Tisch und Stuhl"];

Wir werden diese Funktion testen, indem wir versuchen, das Element „Tabelle und Stuhl“ mit dem folgenden Befehl zu finden:

Konsole.Protokoll (Array.indexof ("Tabelle und Stuhl"));

Die Ausgabe ist:

Die Ausgabe ist 4, da das Element „Tabelle und Stuhl“ das fünfte Element im Array war und wir wissen, dass das erste Element im Array mit dem Index „0“ beginnt. Deshalb hat das 5. Element den Index 4.

Nehmen wir ein weiteres Beispiel, in dem wir versuchen werden, den Index des Elements „Yahoo“ in unserem Array zu finden.

Konsole.Protokoll (Array.indexof ("yahoo"));

Wir erhalten die folgende Ausgabe:

Wie wir sehen können, ist die Ausgabe -1, was bedeutet, dass das Element „Yahoo“ in unserem Array nicht vorhanden ist.

Der .find () Methode

Der .finden() Die Methode nimmt eine Rückruffunktion auf und iteriert das gesamte Array, um das erste Element zu finden und zurückzugeben, das eine bestimmte Bedingung in der Rückruffunktion erfüllt.

Syntax von .find () Methode
Die Syntax von .finden() Funktion ist:

Array.Find (Funktion (Element [, Index [, Array]] dies.arg);

Diese Methode hat einige Parameter:

  • Funktion: Die Rückruffunktion, die gegen jedes Element des Arrays überprüft wird.
  • Das: Standardparameter - Das Argument der Methode

Die Rückruffunktion erfordert weiter drei Argumente:

  • Element: Das einzelne Element des Arrays während der Iteration, das gegen eine bestimmte Bedingung in der Funktion übereinstimmt
  • Index: Index des aktuellen Elements
  • Array: des aktuellen Elements

Rückgabewert: Das Element, das die Bedingung ansonsten übergibt nicht definiert.

Beispiel
Versuchen wir, ein Element in dem Array zu finden, das über den folgenden Befehl eine Länge von mehr als 10 hat:

Konsole.Protokoll (Array.find (elem => elem.Länge> 10));

Wir erhalten die folgende Ausgabe:

Das erste Element, das eine Länge mehr als 10 hat, wurde gedruckt, obwohl es in dem Array noch ein weiteres Element gab.

Lassen Sie uns dies eine Sache machen, die den Zustand von mehr als 10 auf mehr als 30 ändert. Wir wissen, dass wir in unserem Array kein Element haben, das eine Länge von mehr als 30 hat.

Verwenden Sie den folgenden Befehl:

Konsole.Protokoll (Array.find (elem => elem.Länge> 30));

Die Ausgabe, die wir erhalten, ist:

Wie wir bereits wussten, hatten wir kein Element mit einer Länge von mehr als 30, daher kehrte die Funktion mit „undefinierter“ zu uns zurück.

Der .filter () Methode

Wie wir jetzt wissen, dass die .finden() Die Methode findet nur das erste Element, das eine bestimmte Bedingung erfüllt und dann aufhört, auszuführen. Aber meistens wollen Sie das nicht, Sie möchten eine Liste aller Elemente, die diesen spezifischen Zustand erfüllen. Deshalb benutzen wir die .Filter() Methode.

Der .Filter() Methode durchsucht das Array nach und gibt ein Array aller Elemente zurück, die eine bestimmte Bedingung erfüllen.

Syntax der Filter () -Methode
Die Syntax der filter () -Methode ist dem ziemlich ähnlich wie bei der .find () Methode. Es ist wie:

Array.Find (Funktion (Element [, Index [, Array]] dies.arg);

Erklären wir seine Parameter sehr kurz.

  • Funktion: Die Rückruffunktion
  • Das: Standardparameter - Das Argument der Methode

Die Rückruffunktion erfordert weiter drei Argumente:

  • Element: Das einzelne Element des Arrays während der Iteration, das gegen eine bestimmte Bedingung in der Funktion übereinstimmt
  • Index: Index des aktuellen Elements
  • Array: Array des aktuellen Elements

Rückgabewert: Ein Array, das alle Elemente enthält, die die Bedingung übergeben haben, ansonsten ein leeres Array.

Beispiel
Nehmen wir das Beispiel aus der vorherigen Methode, um das Array auf die Elemente zu überprüfen, die eine Länge von mehr als 10 haben, indem Sie den Befehl verwenden:

Konsole.Protokoll (Array.filter ((elem) => elem.Länge> 10));

Die Ausgabe des Befehls ist wie:

Wie Sie sehen können, hat diese Methode ein Array aller Elemente zurückgegeben, die unseren Zustand erfüllten. Aber was wäre, wenn wir, genau wie die Beispiele in der vorherigen Methode, nach den Elementen mit einer Länge von mehr als 30 suchen möchten?. Nun, wir tun dies mit der folgenden Aussage:

Konsole.Protokoll (Array.filter ((elem) => elem.Länge> 30));

Die Ausgabe, die wir erhalten, ist:

Da es nicht einmal ein einzelnes Element in dem Array gab, das eine Länge von mehr als 30 hatte.

Letztendlich sind wir uns jetzt nach Verwendung der folgenden Methoden einige Antworten bewusst:

  • Möchten Sie wissen, ob in einem Array ein Element vorhanden ist?
    Benutze die .inklusive () Methode
  • Möchten Sie den Index eines bestimmten Elements innerhalb des Arrays finden und erhalten??
    Benutze die .Index von() Methode
  • Möchten Sie wissen, welches Element oder welche Elemente eine bestimmte Bedingung erfüllen??
    Benutze die .finden() Und .Filter() Methoden

Abschluss

Der Umgang mit Daten, die in Arrays gespeichert sind. Wir können ein Array mit den vier Schlüsselmethoden in JavaScript durchsuchen. Diese Methoden sind nämlich Include (), find (), indexof (), filter (). Wir haben die Syntax dieser Methoden, ihre Rückgabewerte zusammen mit ihren Beispielen gelernt.