Bagaimana untuk Menapis Susunan Objek mengikut Pelbagai Syarat dalam JavaScript?

Patricia Arquette
Lepaskan: 2024-10-26 22:07:29
asal
856 orang telah melayarinya

How to Filter an Array of Objects by Multiple Conditions in JavaScript?

Memudahkan Tatasusunan Objek Berdasarkan Berbilang Keadaan Penapis dalam JavaScript

Soalan:

Bagaimana bolehkah saya memudahkan tatasusunan objek berdasarkan berbilang keadaan penapis dalam JavaScript? Sebagai contoh, dengan tatasusunan berikut:

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'
  }
];
Salin selepas log masuk

Dan objek penapis:

var filter = {
  address: 'England',
  name: 'Mark'
};
Salin selepas log masuk

Saya mahu menapis semua pengguna mengikut alamat dan nama. Pada masa ini, fungsi saya menambah semua pengguna dengan alamat yang sepadan dalam lelaran pertama dan hanya pengguna terakhir dengan nama yang sepadan dalam lelaran kedua. Walau bagaimanapun, saya perlu menapis mengikut kedua-dua keadaan secara serentak.

Jawapan:

Untuk menapis tatasusunan objek berdasarkan berbilang keadaan, anda boleh menggunakan pendekatan berikut:

users = users.filter(function(item) {
  for (var key in filter) {
    if (item[key] === undefined || item[key] != filter[key])
      return false;
  }
  return true;
});
Salin selepas log masuk

Kod ini berulang melalui kedua-dua tatasusunan objek dan objek penapis, memastikan setiap objek dalam tatasusunan sepadan dengan semua syarat yang dinyatakan dalam penapis. Perbandingan item[kunci] dan [kunci] penapis menyemak sama ada nilai kunci sifat dalam item objek sepadan dengan nilai yang sepadan dalam objek penapis. Jika mana-mana syarat gagal, fungsi penapis mengembalikan palsu, tidak termasuk objek itu daripada hasil yang ditapis. Jika tidak, ia kembali benar, menunjukkan bahawa objek memenuhi semua syarat penapis.

Dengan menggunakan pendekatan ini, anda boleh menapis tatasusunan objek berdasarkan berbilang kriteria dengan berkesan, memastikan hanya objek yang memenuhi semua syarat disertakan dalam keputusan.

Atas ialah kandungan terperinci Bagaimana untuk Menapis Susunan Objek mengikut Pelbagai Syarat dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!