Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Semak Kemasukan Array dengan Cekap dalam JavaScript?

Bagaimanakah Saya Boleh Semak Kemasukan Array dengan Cekap dalam JavaScript?

Linda Hamilton
Linda Hamiltonasal
2024-12-07 18:54:13460semak imbas

How Can I Efficiently Check for Array Inclusion in JavaScript?

Menyemak Kemasukan Tatasusunan

Matlamatnya adalah untuk mengesahkan sama ada nilai tertentu wujud dalam tatasusunan.

Percubaan dan Isu Awal

Percubaan telah dibuat menggunakan perkara berikut fungsi:

Array.prototype.contains = function(obj) {
    var i = this.length;
    while (i--) {
        if (this[i] == obj) {
            return true;
        }
    }
    return false;
}

Walau bagaimanapun, fungsi ini secara konsisten mengembalikan palsu, walaupun tatasusunan mengandungi nilai yang dicari.

Penyelesaian Menggunakan jQuery

jQuery menyediakan fungsi utiliti yang mudah untuk tujuan ini:

$.inArray(value, array)

Fungsi ini mengembalikan indeks yang ditentukan nilai dalam tatasusunan jika dijumpai. Jika nilai tidak ada, ia mengembalikan -1.

Contoh Penggunaan

Pertimbangkan tatasusunan dan panggilan fungsi berikut:

arrValues = ["Sam", "Great", "Sample", "High"];
alert($.inArray("Sam", arrValues)); // Displays 0

Dalam kes ini, amaran akan memaparkan 0, menunjukkan bahawa "Sam" ditemui pada indeks 0 dalam tatasusunan.

Penyelesaian Alternatif

Kaedah JavaScript lain juga boleh digunakan untuk tujuan ini, seperti indexOf, lastIndexOf dan beberapa. Pilihan bergantung pada keperluan khusus dan pertimbangan pengoptimuman.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak Kemasukan Array dengan Cekap dalam JavaScript?. 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