Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mencari Objek dengan Nilai Atribut Khusus dalam Tatasusunan JavaScript dengan Cekap?

Bagaimanakah Saya Boleh Mencari Objek dengan Nilai Atribut Khusus dalam Tatasusunan JavaScript dengan Cekap?

DDD
DDDasal
2024-12-16 18:07:21490semak imbas

How Can I Efficiently Search for Objects with Specific Attribute Values in JavaScript Arrays?

Mencari Tatasusunan JavaScript untuk Objek dengan Nilai Atribut Khusus

Untuk menentukan sama ada tatasusunan mengandungi objek dengan nilai atribut tertentu, pertimbangkan untuk memanfaatkan tatasusunan kaedah yang menyokong carian yang cekap.

1. Menggunakan Kaedah some():

if (vendors.some((e) => e.Name === 'Magenic')) {
  // Object found with the matching attribute value
}

some() menyemak sama ada sekurang-kurangnya satu objek dalam tatasusunan memenuhi syarat.

2. Menggunakan Kaedah find():

if (vendors.find((e) => e.Name === 'Magenic')) {
  // Returns the first object with the matching attribute value
}

find() mengembalikan objek yang ditemui atau tidak ditentukan jika tiada padanan ditemui.

3. Menentukan Kedudukan Objek:

const i = vendors.findIndex((e) => e.Name === 'Magenic');
if (i > -1) {
  // Position of the object with the matching attribute value
}

findIndex() mengembalikan indeks objek padanan pertama atau -1 jika tidak ditemui.

4. Mencari Berbilang Objek Padanan:

if (vendors.filter((e) => e.Name === 'Magenic').length > 0) {
  // Array of all objects with the matching attribute value
}

filter() mengembalikan tatasusunan baharu yang mengandungi semua objek yang memenuhi syarat.

5. Mengendalikan Keserasian Pelayar Lama:

Untuk penyemak imbas tanpa sokongan fungsi anak panah, gunakan:

if (vendors.filter(function(e) { return e.Name === 'Magenic'; }).length > 0) {
  // Array of all objects with the matching attribute value
}

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Objek dengan Nilai Atribut Khusus dalam Tatasusunan JavaScript dengan Cekap?. 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