Rumah >hujung hadapan web >tutorial js >Bagaimana untuk mencari semua elemen yang sepadan dengan keadaan tertentu dalam 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.
_.where( list, [predicate], [context] )
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.
_.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>
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>
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>
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>
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>
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>
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>
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!