Rumah >hujung hadapan web >tutorial js >Bagaimanakah cara saya menapis pelbagai objek berdasarkan kriteria tertentu dalam JavaScript?
Susun Penapis JavaScript Objek: Mencari Kriteria Khusus
Susun atur objek menawarkan cara yang mudah untuk menyusun data, tetapi kadangkala ia perlu untuk mencari maklumat khusus di dalamnya. Dengan memanfaatkan kaedah penapis JavaScript atau fungsi grep jQuery, anda boleh melakukan carian sedemikian dengan cekap.
Untuk mencari objek dalam tatasusunan objek, anda mesti menentukan kriteria untuk carian tersebut. Dalam contoh ini, anda bertujuan untuk mengenal pasti objek dengan sifat "nama" ialah "Joe" dan sifat "umur" kurang daripada 30 tahun.
Menggunakan penyelesaian JavaScript moden:
<code class="javascript">const found_names = names.filter(v => v.name === "Joe" && v.age < 30);</code>
Baris ini mencipta tatasusunan found_names yang mengandungi semua objek yang sepadan dengan kriteria yang ditentukan. Kaedah Array.prototype.filter() berulang melalui setiap elemen dalam tatasusunan nama, menggunakan fungsi tanpa nama yang disediakan. Jika fungsi kembali benar untuk elemen tertentu, elemen itu ditambahkan pada tatasusunan found_names.
Sebagai alternatif, jika anda lebih suka menggunakan jQuery:
<code class="javascript">var found_names = $.grep(names, function(v) { return v.name === "Joe" && v.age < 30; });</code>
fungsi $.grep() jQuery beroperasi sama dengan kaedah Array.prototype.filter(), menapis tatasusunan berdasarkan syarat yang ditentukan. Ia berulang melalui tatasusunan nama, menggunakan syarat pada setiap objek. Hasilnya ialah tatasusunan yang mengandungi objek yang memenuhi kriteria.
Dengan menggunakan kaedah ini, anda boleh mencari pelbagai objek dan mencari data tertentu dengan mudah, memudahkan operasi carian yang kompleks dan meningkatkan kecekapan aplikasi JavaScript anda .
Atas ialah kandungan terperinci Bagaimanakah cara saya menapis pelbagai objek berdasarkan kriteria tertentu dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!