VorwortDie Sprache JavaScript hat in den letzten Jahren mehrere Aktualisierungen erfahren. Behalten Sie stets eine Lernhaltung bei, um mit dem Tempo der technologischen Neuerungen Schritt zu halten. Nutzen Sie die Pausenzeit, um sich mit der Verwendung von Array-Includes und -Reduce vertraut zu machen. Array.Prototyp.enthältES7 fügt Unterstützung für diese Methode hinzu. Die Methode includes() wird verwendet, um zu bestimmen, ob ein Array ein Element mit einem angegebenen Wert enthält, und gibt einen Booleschen Wert von true oder false zurück. Wenn es enthalten ist, gibt es true zurück, andernfalls gibt es false zurück. Grammatik
Parameter
RückgabewertGibt „true“ zurück, wenn enthalten, andernfalls „false“. Beispiele// ES5-Code const numbers = ["eins", "zwei", "drei", "vier"]; console.log(numbers.indexOf("Zahlen") > -1); // wahr console.log(numbers.indexOf("Zahlen") > -1); // false // ES7-Code console.log(numbers.includes("Zahlen")); // wahr console.log(numbers.includes("Alle")); // false console.log(numbers.includes("一",1)); // false, Suche ab Array-Index 1 rückwärtsconsole.log(numbers.includes("一", -3)); // true, Suche ab array.length + fromIndex rückwärts, entspricht dem Start ab Index 1 oben Durch die Verwendung der Includes-Methode kann der Code kurz und leicht verständlich gemacht werden. Die Include-Methode eignet sich auch gut zum Vergleichen von Werten, wie der folgende Code zeigt. // Vergangenheit const day = "Dienstag"; if (day === "Dienstag" || day === "Mittwoch" || day === "Donnerstag") { konsole.log(Tag); } // Nowif (["Dienstag", "Mittwoch", "Donnerstag"].includes(Tag)) { konsole.log(Tag); } Array.Prototyp.ReduzierenDie Methode „reduce()“ führt die Reducer-Funktion für jedes Element im Array aus (in aufsteigender Reihenfolge) und fasst die Ergebnisse in einem einzigen Rückgabewert zusammen. Grammatik
Führt die Rückruffunktion nacheinander für jedes Element im Array aus und schließt Elemente im Array aus, die gelöscht wurden oder denen nie ein Wert zugewiesen wurde. Parameter
RückgabewertDie Funktion akkumuliert die Ergebnisse der Verarbeitung. Beispiele const arrNumbers = [1, 2, 3, 4, 5]; const reduceNumbers = (arrayNumbers, accumulatorInitVal = false) => { const reduceCallback = (Akkumulator, aktueller Wert, aktueller Index) => { console.log(`Aktueller Index: ${currentIndex}`); Gib Akkumulator + currentVal zurück; }; AkkumulatorInitVal zurückgeben ? arrayNumbers.reduce(reduceCallback, accumulatorInitVal) : arrayNumbers.reduce(reduceCallback); }; console.log(reduceNumbers(arrNumbers)); // 15, der Anfangswert des Akkumulators ist der Wert des ersten Elements des Arrays 1 console.log(reduceNumbers(arrNumbers, 10)); // 25, der Anfangswert des Akkumulators ist 10 console.log(current index: ${currentIndex}) dient dazu, den Indexwert intuitiver anzuzeigen. Beim ersten Mal, wenn der Anfangswert nicht definiert ist, lautet die Ausgabe wie folgt:
Die zweite Definition der Ausgabe des Akkumulator-Anfangswertes lautet wie folgt:
Als Nächstes haben wir eine seltsame Anforderung: Aus irgendeinem Grund benötigen wir ein neues Array mit den vollständigen Namen aller unserer Benutzer (Nachname und Vorname), aber nur, wenn sie in ihren 20ern sind und ihr vollständiger Name drei Zeichen lang ist. Fragen Sie uns nicht, warum wir solch eine seltsame Datenuntermenge benötigen. Der Produktmanager hat gefragt und wir helfen gerne weiter^_^ const Benutzer = [ { Vorname: "Jian", Nachname: "Sun", Alter: 37, }, { Vorname: "策", Nachname: "Sun", Alter: 21, }, { Vorname: "Ge Liang", Nachname: "朱", Alter: 28, }, { Vorname: "Name", Nachname: "Liu", Alter: 44, }, { Vorname: "统", Nachname: "Pang", Alter: 22, }, { Vorname: "维", Nachname: "姜", Alter: 19, }, { Vorname: "Vorname", Nachname: "Liu", Alter: 22, }, ]; const getFullName = (Benutzer) => `${user.lastName}${user.firstName}`; const filterByAge = (Benutzer) => Benutzer.Alter >= 20 && Benutzer.Alter < 30; // Konventionelle Implementierung const getFilterResult = users // Der erste Schritt besteht darin, Benutzer im Alter zwischen 20 und 30 Jahren zu filtern.filter((user) => filterByAge(user)) // Vollständige Namen verketten.map((Benutzer) => getFullName(Benutzer)) // Filter.filter((vollständigerName) => vollständigerName.länge === 3); console.log(getFilterResult); // ['Zhuge Liang', 'Liu Bowen'] // Iterationsimplementierung const iterationsFilterResult = (arrayResult, currentUser) => { const vollständiger Name = getFullName(aktueller Benutzer); wenn (filterByAge(currentUser) && vollständigerName.Länge === 3) { arrayResult.push(vollständiger Name); } Array-Ergebnis zurückgeben; }; console.log(Benutzer.reduce(iterationsFilterResult, [])); // [ 'Zhuge Liang', 'Liu Bowen' ] ZusammenfassenDies ist das Ende dieses Artikels über die grundlegende Verwendung von JavaScript-Array-Includes und -Reduces. Weitere verwandte JavaScript-Array-Includes und -Reduces-Inhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Lösen Sie das Problem des Startfehlers von PHPStudy MySQL unter Windows
>>: Praktische Methode zum Löschen verknüpfter Tabellen in MySQL
Vorwort Die Rolle des Prozessmanagements: Integri...
1. Erstellen Sie den Tomcat-Installationspfad mkd...
Inhaltsverzeichnis 1. Wie entsteht Cross-Domain? ...
Wenn Sie nur ein paar Tabellen oder eine einzelne...
Da die in der MySQL-Datenbank gespeicherten Daten...
Die GtkTreeView-Komponente ist eine erweiterte Ko...
Ich habe gerade einen von JunChen verfassten Beitr...
Hintergrund Viele Website-Designs bestehen im All...
1. Trash oder Klassiker? Die Webtechnologie aktua...
Inhaltsverzeichnis 1. Wir haben festgestellt, das...
Die im Internet gefundene Methode funktioniert Die...
Zabbix erkennt automatisch Regeln zur Überwachung...
Eine Liste ist definiert als eine Text- oder Diag...
1. Ziehen Sie das Bild Docker-Pull-Registrierung....
Diese alte Frage hat unzählige Frontend-Entwickler...