Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Memeriksa Objek dengan Atribut Khusus dengan Cekap dalam Tatasusunan JavaScript?
Masalah:
Pertimbangkan tatasusunan yang mengandungi objek dengan atribut seperti:
vendors = [{ Name: 'Magenic', ID: 'ABC' }, { Name: 'Microsoft', ID: 'DEF' } // and so on... ];
Bagaimana kita boleh menyemak sama ada an objek dengan nilai atribut tertentu (cth., "Magenic") wujud dalam tatasusunan ini tanpa menggunakan gelung manual?
Penyelesaian:
Sebaliknya gelung, kami boleh memanfaatkan kaedah tatasusunan JavaScript asli untuk melaksanakan tugas ini dengan cekap:
1. Array.some()
Kaedah some() menyemak sama ada sekurang-kurangnya satu elemen dalam tatasusunan memenuhi syarat yang diberikan. Untuk kes anda:
if (vendors.some(e => e.Name === 'Magenic')) { // Object found! }
2. Array.find()
Sama seperti some(), find() mengembalikan elemen pertama yang memenuhi syarat yang ditentukan. Jika padanan ditemui:
if (vendors.find(e => e.Name === 'Magenic')) { // Returns the matching object }
3. Array.findIndex()
Jika anda hanya memerlukan indeks unsur padanan:
const i = vendors.findIndex(e => e.Name === 'Magenic'); if (i > -1) { // Index of the matching object found }
4. Array.filter()
Untuk mendapatkan semua objek yang sepadan:
if (vendors.filter(e => e.Name === 'Magenic').length > 0) { // Array of matching objects found }
Untuk Keserasian Pelayar Lama:
Jika fungsi anak panah adalah tidak disokong:
if (vendors.filter(function(e) { return e.Name === 'Magenic'; }).length > 0) { // Array of matching objects found }
Kaedah ini menyediakan способы pengesanan yang cekap objek dengan nilai atribut khusus dalam tatasusunan, mengelakkan keperluan untuk gelung eksplisit.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memeriksa Objek dengan Atribut Khusus dengan Cekap dalam Tatasusunan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!