Mencari Objek dalam Tatasusunan Berdasarkan Nilai Atribut
Pertimbangkan tatasusunan seperti:
vendors = [{ Name: 'Magenic', ID: 'ABC' }, { Name: 'Microsoft', ID: 'DEF' }, // and so on... ];
Bagaimana anda boleh cekap tentukan sama ada "Magenic" wujud dalam tatasusunan ini? Begini cara untuk mencapainya tanpa menggunakan gelung eksplisit, yang amat berguna apabila berurusan dengan set data yang besar:
Menggunakan beberapa kaedah untuk mencari elemen padanan tunggal:
if (vendors.some(e => e.Name === 'Magenic')) { // A matching object is found! }
Mengambil semula memadankan objek menggunakan find:
if (vendors.find(e => e.Name === 'Magenic')) { // Returns the object itself, not just a boolean. }
Mencari indeks unsur padanan pertama dengan findIndex:
const i = vendors.findIndex(e => e.Name === 'Magenic'); if (i > -1) { // Indicates a matching object found at index i. }
Jika berbilang objek yang sepadan diperlukan, gunakan penapis:
if (vendors.filter(e => e.Name === 'Magenic').length > 0) { // Returns all objects that satisfy the condition. }
Untuk penyemak imbas tanpa sokongan untuk fungsi anak panah:
if (vendors.filter(function(e) { return e.Name === 'Magenic'; }).length > 0) { // Same as above, using traditional function syntax. }
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Objek dengan Cekap dalam Tatasusunan JavaScript Berdasarkan Nilai Atribut?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!