Heim  >  Artikel  >  Web-Frontend  >  Wie finde ich alle Elemente, die einer bestimmten Bedingung in JavaScript entsprechen?

Wie finde ich alle Elemente, die einer bestimmten Bedingung in JavaScript entsprechen?

王林
王林nach vorne
2023-08-24 09:37:08741Durchsuche

JavaScript 中如何找出与特定条件匹配的所有元素?

Mit Hilfe der Funktion _.ware() können wir die spezifischen Bedingungen finden.

_.where() gehört zu underscore.js, einer Javascript-Bibliothek, die eine Vielzahl von Funktionen bereitstellt. _.where() ist eine Funktion, die verwendet wird, um ein bestimmtes Element basierend auf einer bestimmten Bedingung zu finden.

Angenommen, Sie möchten alle Benutzerdetails der Klasse finden und dann die Funktion _.where() auf die Liste aller Abschnitte anwenden und dabei die Bedingung als Abschnittsnamen übergeben. Daher werden die Namen aller Benutzer zurückgegeben, die den spezifischen Kriterien entsprechen.

Grammatik

_.where( list, [predicate], [context] )

Diese Funktion akzeptiert drei Parameter als Parameter.

  • List – Parameter zum Speichern einer Datenliste.

  • Prädikat – Dieser Parameter enthält die Testbedingung.

  • Kontext – Der Text, den wir anzeigen müssen.

Rückgabewert− Diese Funktion gibt alle Werte zurück, die die Bedingungen erfüllen.

Beispiel 1: Übergabe eines Arrays an die Funktion _.where()

Die Funktion

_.where() ruft die Elemente des Arrays einzeln ab und erfüllt die angegebenen Bedingungen. Lange ist es wahr oder falsch. Bei einer Übereinstimmung wird dieser Wert zurückgegeben.

<!DOCTYPE html>
<html>
<head>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>
</head>
<body>
   <script type="text/javascript">
      var users = [
         { name: "priya", Long: "false" },
         { name: "aishwarya", Long: "true" },
         { name: "akanksha", Long: "true" },
         { name: "ruby", Long: "true" },
      ];
      document.write(JSON.stringify(_.where(users, { Long: "true" }))); 
   </script>
</body>
</html>

Beispiel 2

Im folgenden Beispiel übergeben wir eine Liste von Elementen mit mehreren Attributen an die Funktion _.where() -

<!DOCTYPE html>
<html>
<head>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>
</head>
<body>
   <script type="text/javascript">
      var details = [
         { "city": "Ranchi", "state": "Jharkhand", "id": "1" },
         { "city": "Jamshedpur", "state": "Jharkhand", "id": "2" },
         { "city": "Hyderabad", "state": "Telangana", "id": "3" },
         { "city": "Delhi", "state": "Delhi", "id": "4" },
         { "city": "Delhi", "Pune": "Maharastra", "id": "5" }
      ];
      document.write(JSON.stringify(_.where(details,{state:"Jharkhand"})));
   </script>
</body>
</html>

Beispiel: 3

In diesem Beispiel übergeben wir ein Array mit einer Zahl als einer seiner Eigenschaften an die Funktion _.where() -

<!DOCTYPE html>
<html>
<head>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>
</head>
<body>
   <script type="text/javascript">
      var users = [
         { id: 1, name: "priya" },
         { id: 2, name: "aishwarya" },
         { id: 3, name: "akanksha" },
         { id: 4, name: "ruby" },
         { id: 5, name: "Aman" },
      ];
      document.write(JSON.stringify(_.where(users, { id: 5 })));
   </script>
</body>
</html>

Beispiel 4: _.where()-Funktion als _.findWhere()-Funktion

Wir können die Funktion _.findWhere() anstelle der Funktion _.where() verwenden, da beide die gleiche Ausgabe liefern.

<!DOCTYPE html>
<html>
<head>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>
</head>
<body>
   <script type="text/javascript">
      var users = [
         { id: 1, name: "priya" },
         { id: 2, name: "aishwarya" },
         { id: 3, name: "akanksha" },
         { id: 4, name: "ruby" },
         { id: 5, name: "Aman" },
      ];
      document.write(JSON.stringify(_.findWhere(users, { id: 5 })));
   </script>
</body>
</html>

Beispiel 5: Verwendung der Methode _.filter()

In diesem Beispiel verwenden wir die Methode _.filter(), um zu prüfen, ob die Elemente im Array die Bedingungen erfüllen.

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8" />
   <meta http-equiv="X-UA-Compatible" content="IE=edge" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <title>_.filter() method example</title>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>
   <div id="filter"></div>
</head>
<body>
   <script>
      let arr = [2, 4, 6, 8, 10];
      let flag = false;
      let getEvenNum = _.filter(arr, function (num) {
         return num % 2 == 0;
      });
      if (JSON.stringify(getEvenNum) === JSON.stringify(arr)) {
         flag = true;
      }
      document.getElementById("filter").innerHTML ="The array elements passed the condition : " + flag;
   </script>
</body>
</html>

Beispiel 6: Verwendung der every()-Methode

In diesem Beispiel verwenden wir die Methode array.every(), um zu prüfen, ob die Elemente im Array die Bedingungen erfüllen.

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8" />
   <meta http-equiv="X-UA-Compatible" content="IE=edge" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <title>Array.every() method example</title>
   <div id="every"></div>
</head>
<body>
   <script>
      let arr = new Array(2, 4, 6, 8, 10);
      let getEvenNum = arr.every(function (num) {
         return num % 2 == 0;
      });
      document.getElementById("every").innerHTML ="The array elements have passed the condition : " + getEvenNum;
   </script>
</body>
</html>

Beispiel 7: Verwendung einer for-Schleife

Sehen wir uns nun ein Beispiel mit einer for-Schleife an -

<!DOCTYPE html>
<html lang="en">
<head>
   <title>Using for loop example</title>
   <div id="every"></div>
</head>
<body>
   <script>
      let arr = new Array(2, 4, 6, 8, 10);
      let flag = true;
      for (let i = 0; i < arr.length; i++) {
         if (arr[i] > 10) {
            flag = false;
            break;
         }
      }
      document.getElementById("every").innerHTML = "The array elements have passed the condition : " + flag;
   </script>
</body>
</html>

Das obige ist der detaillierte Inhalt vonWie finde ich alle Elemente, die einer bestimmten Bedingung in JavaScript entsprechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen