Willkommen zurück.
Reden wir über Filter.
Nun, anhand des Namens sollten Sie erraten, was es tut, es filtert die Dinge für uns.
Mit Map haben wir also immer die gleiche Anzahl von Elementen zurückbekommen, oder?
Wir haben drei Artikel und wir haben drei Artikel zurückbekommen.
Wir haben einfach jedes Element mit Filtern zugeordnet.
Wir können manchmal weniger erhalten, als wir gegeben haben.
Wir filtern einige unserer Ergebnisse.
Lassen Sie uns also eine neue Funktion erstellen, anstatt sie mit zwei zu multiplizieren.
Ich möchte eine Funktion erstellen.
Was machen wir in dieser Funktion mit den Elementen, sagen wir, wenn Elemente auf ungerade überprüft werden?
Also sagen wir, hey, sind diese Zahlen ungerade und geben nur die ungeraden Zahlen zurück.
Überprüfen Sie also, was einen Artikel erhalten wird.
Und dieser Artikel wird bearbeitet, und wieder müssen wir etwas zurückgeben, was werden
wir zurückgeben?
Nun, die Filterfunktion wird versuchen, einen wahren und einen falschen Wert oder einen bolianischen Wert zu erhalten, ob er
gefiltert werden soll oder nicht.
Wenn wir also überprüfen möchten, ob eine Zahl eingeschaltet ist, können wir das Element Modulo zwei sagen, da Modulo zwei die Zahl durch
zwei teilt.
Und wenn es gleich Null ist, dann ist es gerade.
Richtig, ich kann also sagen, dass es nicht gleich Null ist. Wenn der Rest also nicht gleich Null ist, wird es
ungerade und wir geben dies einfach zurück.
Auch dies wird zu einem booleschen Ausdruck ausgewertet und basierend auf dem booleschen Ausdrucksfilter wird sagen, wenn es
wahr ist, behalte ich es in der Liste.
Wenn nicht, werde ich es entfernen oder nicht.
Fügen Sie es der neuen Liste hinzu.
Schauen wir uns das also an, anstatt weniger zu filtern.
Und hier werden wir nachsehen.
Oder weißt du was, ich mag diesen Namen nicht, lass es uns tun.
Nur Khaled.
So wie das.
Wenn ich das laufe.
Sehen Sie sich das an, ich habe die beiden gefiltert und entfernt, weil das eine gerade Zahl ist.
Beachten Sie auch hier, dass ich die Funktion nicht aufrufe, weil Filter eine Funktion oder eine sogenannte Funktionssignatur akzeptiert, das heißt,
hey, sagen Sie mir einfach, wo ich den Speicherplatz finden kann, in den ich gehen soll, um welche
Aktion auszuführen ist.
Und es wird sagen, hey, gib mir die Daten und ich werde diese Funktion für jedes Element ausführen.
Wenn wir also zu einem gehen, wird diese Funktion mit einem als Argument ausgeführt.
Eins geteilt durch zwei.
Nun, das gibt uns definitiv keinen Rest von Null, also wird das zurückkehren.
Wahr.
Und das bedeutet, dass ich es jedoch zu der neuen Liste hinzufügen werde, die wir erstellen, wenn wir bei
zwei angelangt sind, da dies false zurückgibt.
Es wird nicht zur Liste hinzugefügt.
Angenommen, wir haben in diesem Fall eine Liste von Benutzern, möchten wir möglicherweise basierend auf Benutzern herausfiltern, die mit
dem Namen A beginnen.
Wir können die Filterfunktion verwenden, um alle Benutzernamen zu filtern.
Und haben nur eine neue Liste mit den Benutzernamen, mit Buchstaben, die mit einer anderen sehr nützlichen Funktion beginnen, und wie Sie sehen,
haben wir alles sauber gehalten.
Es erstellt eine neue Liste für uns.
Es ändert nicht die ursprüngliche Liste.
Wir behalten also dieses funktionale Paradigma im Hinterkopf.
Und wieder einmal ist das Schöne an Karte und Filter, wie einfach die Funktionen werden.
Alles ist einfach schön und einfach.
Und wohlgemerkt, sie können etwas komplizierter werden.
Aber alles was wir wissen müssen ist, hey, was soll ich mit dem Artikel machen und warum sollte ich zurücksenden?
Das ist das Einzige, worum es ihnen geht, anstatt diese massiven, massiven Funktionen zu haben, die
versuchen, alles zu tun.
Gut, reden wir als nächstes über Zipp.