Mencari Objek dengan Memadankan Nilai dalam Tatasusunan JavaScript
Apabila berhadapan dengan tatasusunan objek JavaScript, mendapatkan semula objek tertentu berdasarkan sifat yang sepadan nilai boleh mencabar. Artikel ini meneroka kaedah cekap yang tersedia untuk mencari objek sedemikian dengan mudah.
Kaedah find()
Kaedah find() JavaScript menyediakan penyelesaian yang mudah. Sintaksnya ialah:
find(predicateFunction)
di mana predicateFunction ialah panggilan balik yang mengembalikan nilai boolean yang menunjukkan jika elemen semasa memenuhi kriteria carian. Untuk mencari objek dengan nilai yang sepadan untuk sifat "id", kita boleh menggunakan kod berikut:
myArray.find(x => x.id === '45').foo;
Kaedah findIndex()
Jika anda Hanya berminat dengan indeks objek yang sepadan, kaedah findIndex() boleh berguna. Sintaksnya ialah:
findIndex(predicateFunction)
Kod di bawah akan mengembalikan indeks objek dengan sifat "id" yang ditetapkan kepada '45':
myArray.findIndex(x => x.id === '45');
Penapis( ) Kaedah
Untuk mendapatkan tatasusunan yang mengandungi semua objek yang sepadan, kaedah penapis() menyediakan penyelesaian yang mudah. Sintaksnya ialah:
filter(predicateFunction)
Kod berikut akan mengembalikan tatasusunan objek yang mempunyai sifat "id" yang ditetapkan kepada '45':
myArray.filter(x => x.id === '45');
Peta( ) Kaedah
Akhir sekali, jika anda memerlukan tatasusunan yang mengandungi hanya nilai padanan harta tertentu, kaedah map() boleh digunakan. Sintaksnya ialah:
map(transformFunction)
Kod di bawah akan mengembalikan tatasusunan nilai sifat "foo" untuk objek yang mempunyai sifat "id" ditetapkan kepada '45':
myArray.filter(x => x.id === '45').map(x => x.foo);
Nota Keserasian Penyemak Imbas
Perlu diperhatikan bahawa penyemak imbas seperti Internet Explorer mungkin tidak menyokong kaedah moden seperti cari() dan penapis(). Untuk keserasian dengan penyemak imbas ini, pertimbangkan untuk mengalihkan kod anda menggunakan Babel dengan polyfill yang sesuai.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Objek JavaScript Dengan Cekap Berdasarkan Nilai Harta?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!