paint-brush
Ein tiefer Einblick in die JavaScript-Methode Some()von@iggy
2,067 Lesungen
2,067 Lesungen

Ein tiefer Einblick in die JavaScript-Methode Some()

von Ignatius Sani5m2023/07/05
Read on Terminal Reader
Read this story w/o Javascript

Zu lang; Lesen

Die 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. Da es sich um eine Methode handelt, akzeptiert sie Argumente, was Ihnen mehr Flexibilität bei der Verwendung eines Arrays gibt.

People Mentioned

Mention Thumbnail
featured image - Ein tiefer Einblick in die JavaScript-Methode Some()
Ignatius Sani HackerNoon profile picture
0-item
1-item

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.


Was ist die JavaScript- Methode 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.



Wie verwende ich die JavaScript- Methode 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:

  1. Element
  2. Index
  3. Array


Element

Der Elementparameter gibt das aktuelle Element an, das im Array verarbeitet wird.

Index

Der Index ist lediglich der Index des aktuellen Elements, das im Array verarbeitet wurde.

Array

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.



Drei Möglichkeiten, die JavaScript-Methode some() zu schreiben

Die drei gängigen Arten, Javascript zu schreiben, sind wie folgt:

  1. Pfeilfunktion
  2. Inline-Callback-Funktion
  3. Rückruffunktion


Pfeilfunktion

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) => { /*... */ })


Inline-Callback-Funktion

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)


Rückruffunktion

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)



Anwendungsfälle

  1. Formulareingaben validieren
  2. Bestätigung der Existenz eines Artikels
  3. Autorisierung und Zugangskontrolle


Formulareingaben gültig machen

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.


Bestätigen der Existenz eines Elements

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.


Autorisierung und Zugangskontrolle

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.



Imbissbuden

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.