Ringkaskan Penapisan Objek Kompleks dalam JavaScript dengan Berbilang Syarat
Pertimbangkan keperluan untuk menapis tatasusunan objek berdasarkan berbilang keadaan. Memandangkan tatasusunan pengguna dan objek penapis, tugasnya adalah untuk menapis pengguna berdasarkan sifat tertentu.
Pendekatan Awal:
Fungsi penapisan awal dilaksanakan yang berulang kali sifat penapis dan semak terhadap harta setiap pengguna. Walau bagaimanapun, pendekatan ini mungkin mengakibatkan padanan yang berlebihan.
Penyelesaian yang Diperbaiki:
Untuk menangani isu ini, fungsi penapis yang disemak semula boleh dilaksanakan seperti berikut:
<code class="javascript">users = users.filter(function(item) { for (var key in filter) { if (item[key] === undefined || item[key] != filter[key]) return false; } return true; });</code>
Penjelasan:
Fungsi ini beroperasi seperti berikut:
Sampel Penggunaan:
Pertimbangkan contoh berikut:
<code class="javascript">var users = [{ name: 'John', email: '[email protected]', age: 25, address: 'USA' }, { name: 'Tom', email: '[email protected]', age: 35, address: 'England' }, { name: 'Mark', email: '[email protected]', age: 28, address: 'England' } ]; var filter = { address: 'England', name: 'Mark' }; console.log(users.filter(function(item) { for (var key in filter) { if (item[key] === undefined || item[key] != filter[key]) return false; } return true; }));</code>
Output:
[ { name: 'Mark', email: '[email protected]', age: 28, address: 'England' } ]
Penapis yang disemak ini menggabungkan dengan berkesan berbilang syarat untuk menapis objek berdasarkan kriteria yang ditentukan.
Atas ialah kandungan terperinci Bagaimana untuk Menapis Objek JavaScript Dengan Cekap Berdasarkan Pelbagai Keadaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!