Werfen wir heute einen Blick auf eine andere JavaScript-Array-Methode, nämlich die Methode some()
. Wir lernen, wie wir mit der Methode some()
feststellen können, ob ein Element in einem Array vorhanden ist.
Wie immer sind die Codebeispiele in diesem Artikel in der Sprache JavaScript geschrieben. Für das richtige Verständnis sind daher Sprachkenntnisse erforderlich. Lassen Sie uns ohne weitere Umschweife eintauchen.
some()
?Die Javascript-Methode some() ermittelt, ob mindestens ein Array-Mitglied den durch die angegebene Funktion definierten Test erfüllt. Sie gibt „true“ zurück, wenn sie ein Element im Array findet, für das die angegebene Funktion „true“ zurückgibt; andernfalls wird false zurückgegeben. Es werden keine Änderungen am Array vorgenommen.
Sehen wir uns diesen Codeausschnitt an, um diese Methode besser zu verstehen:
const basket = ["oranges", "apples", "pineapple", "yam"] basket.some(bas => bas.length === 3) // true basket.some(bas => bas.length <= 1) // false
Wir versuchen einfach zu testen, ob die Länge einer der Früchte im Korb-Array genau gleich 3 ist. Zumindest im Array erfüllt ein Mitglied diesen Test; In diesem Fall heißt es „Yam“. Unser erwartetes Ergebnis wäre wahr. Die zweite Bedingung prüft, ob es eine Fruchtlänge gibt, die kleiner oder gleich 1 ist. Dies würde zu „Falsch“ führen, da wir offensichtlich keine Länge haben, die kleiner oder gleich 1 ist.
some()
?Die Javascript-Methode some() ist einfach zu verwenden; Lassen Sie mich Ihnen zeigen, wie.
Beginnen wir damit, zu verstehen, wie die Syntax geschrieben ist.
Die Syntax wird geschrieben, indem das Wort „some“ einfach wie folgt mit einer Klammer „()“ umgeben wird:
some()
Da es sich um eine Methode handelt, akzeptiert sie Argumente, was Ihnen eine größere Flexibilität bei der Verwendung eines Arrays mit der Methode some() gibt.
Sie sind wie folgt:
Der Elementparameter gibt das aktuelle Element an, das im Array verarbeitet wird.
Der Index ist lediglich der Index des aktuellen Elements, das im Array verarbeitet wurde.
Dies ist das Array, in dem wir die Methode some() aufrufen.
Nachdem wir nun die Syntax verstanden haben, sehen wir uns an, wie die vollständige Methode aussieht.
some((element, index, array) => { /*... */ })
Wie Sie sehen können, sind die drei Parameter im obigen Codeausschnitt enthalten, der ein klares Beispiel für den Aufbau dieser Methode darstellt.
Abhängig von Ihren Anforderungen können Sie bestimmte Merkmale überspringen. Ähnlich wie der Index können Sie ihn als eine der Optionen anbieten, wenn Sie zusätzliche Details zum Array wünschen. Es müssen nicht immer alle Kriterien berücksichtigt werden.
Die drei gängigen Arten, Javascript zu schreiben, sind wie folgt:
Die Pfeilfunktion wurde in ES6 eingeführt und versucht, einige Probleme der herkömmlichen Funktion zu lösen. Diese Funktion kann auch mit den some()-Methoden verwendet werden:
some((element, index, array) => { /*... */ })
Wir haben die Möglichkeit, die Callback-Funktion in die Methode some() zu schreiben, ohne sie in einer Variablen zu speichern.
const basket = ["oranges","apples","pineapple","yam"] const result = basket.some(function (element, index, array)) { return element.length >= 7 }) console.log(result)
Dieser Stil kann geschrieben werden, indem man zunächst die Funktion deklariert und in einer Variablen speichert und sie dann als Callback an die Methode some() übergibt, etwa so:
const basket = ["oranges","apples","pineapple","yam"] function callBack(bas){ return bas.length === 7 } const result = basket.some(callBack) console.log(result)
Bei der Verarbeitung von Formularübermittlungen kann die Funktion some()
verwendet werden, um zu ermitteln, welche Eingabefelder bestimmte Anforderungen erfüllen. Sie könnten beispielsweise überprüfen, ob alle Eingaben gültige E-Mail-Adressen enthalten oder dass mindestens ein Pflichtfeld ausgefüllt ist.
Ich werde Ihnen ein Beispiel geben, wie das aussehen könnte.
const formInputs = document.querySelectorAll('input'); const isAnyInputEmpty = Array.from(formInputs).some(input => input.value === ''); if (isAnyInputEmpty) { console.log('Please fill in all required fields.'); } else { console.log('Form submitted successfully.'); }
Im Codebeispiel stellen wir sicher, dass der Benutzer kein leeres Feld übermittelt. Wir möchten sie sofort benachrichtigen, wenn sie das Feld leer lassen. Und wenn sie die Anforderungen durch die Übermittlung mindestens der relevanten Daten erfüllen, möchten wir die Übermittlung übernehmen.
Wenn wir in unserer Webanwendung einen Warenkorb mit Produkten oder eine Datenstruktur haben, können wir mit some() feststellen, ob ein bestimmtes Produkt vorhanden ist. Dies ist besonders hilfreich, wenn wir bestimmte Aktionen basierend darauf ausführen möchten, ob ein Artikel vorhanden ist oder nicht. Schauen wir uns dieses Codebeispiel an, das es besser erklärt.
const shoppingCart = ['shoes', 'T-shirt', 'trouser']; const itemPresent = shoppingCart.some(item => item === 'trouser'); if (itemPresent){ console.log('Product exists in the cart.') } else { console.log('Product does not exist in the cart.') }
Wir prüfen, ob wir eine „Hose“ im Warenkorb haben. Wir melden uns bei der Konsole an, wenn wir bestätigen, dass sie sich im Warenkorb befindet.
Bei der Implementierung von Benutzerauthentifizierungs- und Autorisierungssystemen können wir some() verwenden, um zu prüfen, ob ein Benutzer mindestens eine erforderliche Berechtigung hat oder zu einer der angegebenen Rollen gehört. Dadurch können wir den Zugriff auf bestimmte Funktionalitäten oder Ressourcen steuern.
const userRoles = ['admin', 'editor']; const permissions = ['admin', 'moderator']; const hasRequiredRole = permissions.some(role => userRoles.includes(role)); if (hasRequiredRole){ console.log('Access granted.') } else { console.log('Access denied.'); }
Im Codebeispiel haben wir die Kombination der Methoden include() und some() verwendet, um Berechtigungen basierend auf den Rollen des Benutzers zu erteilen. Wenn die Rolle eines Benutzers mit der erforderlichen Berechtigung übereinstimmt, gewähren wir ihm Zugriff. andernfalls verweigern wir ihnen den Zugriff.
Abschließend wird darauf hingewiesen, dass die Javascript-Methode some() zum Testen von Bedingungen verwendet wird. Das ursprüngliche Array wird dadurch nicht verändert. Sie akzeptieren drei Parameter: Element, Index und Array, wobei der Elementparameter das aktuelle Element angibt, das im Array verarbeitet wird, und der Indexparameter der „Index“ des aktuellen Elements ist, das im Array verarbeitet wurde.
Vielen Dank, dass Sie meine Rezension der Array-Methode von JavaScript gelesen haben, insbesondere der Methode some(). Was hielten Sie von der Erklärung? Wirst du es versuchen?
Teilen Sie mir Ihre Meinung in den Kommentaren unten mit und folgen Sie mir auf HackerNoon für zukünftige Artikel.