Rumah > hujung hadapan web > tutorial js > Bagaimana untuk mencari semua elemen yang sepadan dengan keadaan tertentu dalam JavaScript?

Bagaimana untuk mencari semua elemen yang sepadan dengan keadaan tertentu dalam JavaScript?

王林
Lepaskan: 2023-08-24 09:37:08
ke hadapan
809 orang telah melayarinya

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

Kita boleh mencari syarat khusus dengan bantuan fungsi _.ware().

_.where() tergolong dalam underscore.js, perpustakaan javascript yang menyediakan pelbagai fungsi. _.where() ialah fungsi yang digunakan untuk mencari elemen tertentu berdasarkan keadaan tertentu.

Andaikan anda ingin mencari semua butiran pengguna kelas, kemudian gunakan fungsi _.where() pada senarai semua bahagian dan lulus syarat sebagai nama bahagian. Jadi nama semua pengguna yang sepadan dengan kriteria tertentu akan dikembalikan.

Tatabahasa

_.where( list, [predicate], [context] )
Salin selepas log masuk

Fungsi ini menerima tiga parameter sebagai parameter.

  • Senarai - Parameter digunakan untuk menyimpan senarai data.

  • Predikat- Parameter ini memegang keadaan ujian.

  • Konteks - Teks yang perlu kami paparkan.

Nilai pulangan− Fungsi ini mengembalikan semua nilai yang memenuhi syarat.

Contoh 1: Menghantar tatasusunan ke fungsi _.where()

Fungsi

_.where() memperoleh elemen tatasusunan satu demi satu dan sepadan dengan syarat yang ditentukan. Panjang betul atau salah. Jika terdapat padanan, nilai ini dikembalikan.

<!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>
Salin selepas log masuk

Contoh 2

Dalam contoh di bawah, kami menghantar senarai elemen dengan berbilang atribut kepada fungsi _.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>
Salin selepas log masuk

Contoh: 3

Dalam contoh ini, kami menghantar tatasusunan dengan nombor sebagai salah satu sifatnya kepada fungsi _.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>
Salin selepas log masuk

Contoh 4: _.where() berfungsi sebagai _.findWhere() fungsi

Kita boleh menggunakan fungsi _.findWhere() dan bukannya fungsi _.where() kerana kedua-duanya memberikan output yang sama.

<!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>
Salin selepas log masuk

Contoh 5: Menggunakan kaedah _.filter()

Dalam contoh ini, kami akan menggunakan kaedah _.filter() untuk menyemak sama ada elemen dalam tatasusunan memenuhi syarat.

<!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>
Salin selepas log masuk

Contoh 6: Menggunakan setiap() kaedah

Dalam contoh ini, kami akan menggunakan kaedah array.every() untuk menyemak sama ada elemen dalam tatasusunan memenuhi syarat.

<!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>
Salin selepas log masuk

Contoh 7: Menggunakan gelung for

Sekarang mari kita lihat contoh menggunakan gelung for -

<!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>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk mencari semua elemen yang sepadan dengan keadaan tertentu dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan