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!