Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menapis Tatasusunan Objek Berdasarkan ID daripada Tatasusunan Lain?

Bagaimana untuk Menapis Tatasusunan Objek Berdasarkan ID daripada Tatasusunan Lain?

Barbara Streisand
Barbara Streisandasal
2024-12-10 20:04:11707semak imbas

How to Filter an Array of Objects Based on IDs from Another Array?

Menyasarkan Objek Khusus dalam Tatasusunan

Menapis tatasusunan objek berdasarkan tatasusunan berbeza boleh berguna dalam pelbagai senario. Pertimbangkan senario di mana kita mempunyai tatasusunan objek orang dan tatasusunan tambahan yang mengandungi pengecam tertentu (cth., ID).

Diberikan tatasusunan orang:

const people = [
  { id: "1", name: "abc", gender: "m", age: "15" },
  { id: "2", name: "a", gender: "m", age: "25" },
  { id: "3", name: "efg", gender: "f", age: "5" },
  { id: "4", name: "hjk", gender: "m", age: "35" },
  { id: "5", name: "ikly", gender: "m", age: "41" },
  { id: "6", name: "ert", gender: "f", age: "30" },
  { id: "7", name: "qwe", gender: "f", age: "31" },
  { id: "8", name: "bdd", gender: "m", age: "78" }
];

dan tatasusunan yang dikehendaki ID:

const id_filter = [1, 4, 5, 8];

Menapis Objek Menggunakan Array.filter

Untuk menapis tatasusunan orang berdasarkan ID yang disediakan, kami boleh menggunakan kaedah penapis() tatasusunan. Kaedah ini menerima fungsi panggil balik yang menerima setiap elemen tatasusunan dan mengembalikan nilai Boolean. Untuk memenuhi keperluan penapisan kami, kami mentakrifkan fungsi panggil balik kami seperti berikut:

person => id_filter.includes(person.id)

Fungsi panggil balik ini pada asasnya menyemak sama ada ID orang semasa terdapat dalam tatasusunan id_filter. Jika ditemui, ia kembali benar; jika tidak, ia akan kembali palsu.

Menggunakan fungsi panggil balik ini, kami kini boleh menapis tatasusunan orang kami:

const filteredPeople = people.filter(person => id_filter.includes(person.id));

Tatasusunan filteredPeople yang terhasil akan mengandungi hanya objek tersebut daripada tatasusunan asal yang IDnya padankan nilai dalam id_filter.

Atas ialah kandungan terperinci Bagaimana untuk Menapis Tatasusunan Objek Berdasarkan ID daripada Tatasusunan Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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