Rumah > hujung hadapan web > tutorial js > Bagaimana Saya Boleh Membuat Array.indexOf() Berfungsi dalam Internet Explorer?

Bagaimana Saya Boleh Membuat Array.indexOf() Berfungsi dalam Internet Explorer?

DDD
Lepaskan: 2024-11-24 09:07:09
asal
998 orang telah melayarinya

How Can I Make Array.indexOf() Work in Internet Explorer?

Memperbaiki Keserasian Array.indexOf() untuk Penyemak Imbas Internet Explorer

Walaupun penggunaan JavaScript yang meluas, pelayar Internet Explorer tidak mempunyai fungsi asli Array.prototype.indexOf() untuk mengesan kejadian objek dalam tatasusunan. Untuk menyelesaikan isu ini, anda boleh melanjutkan prototaip Array dengan coretan berikut pada halaman anda:

Array.prototype.indexOf = function(obj, start) {
     for (var i = (start || 0), j = this.length; i < j; i++) {
         if (this[i] === obj) { return i; }
     }
     return -1;
}
Salin selepas log masuk

Apabila melaksanakan pembetulan ini, pertimbangkan nasihat berikut:

  • Semak Kewujudan Prototaip: Sebelum melanjutkan prototaip Array, sahkan sama ada fungsi indexOf() sudah wujud dengan menyemak kewujudan Array.prototype.indexOf. Jika tiada, laksanakan fungsi tersebut.

Elakkan Pengesanan Penyemak Imbas: Menggunakan kod pengesanan penyemak imbas seperti "jika (pelayar == Pelayar Gaya IE)" biasanya tidak digalakkan kerana ia tidak boleh dipercayai dan boleh membawa kepada tingkah laku yang tidak dijangka.

Sebaliknya, pilih pengesyoran berikut oleh Mozilla Developer Network (MDC):

if (!Array.prototype.indexOf) {

}
Salin selepas log masuk

Pendekatan ini memastikan keserasian tanpa memerlukan semakan khusus penyemak imbas. Sebagai amalan terbaik, sentiasa pilih penyelesaian merentas penyemak imbas berbanding penyelesaian yang bergantung kepada penyemak imbas.

Atas ialah kandungan terperinci Bagaimana Saya Boleh Membuat Array.indexOf() Berfungsi dalam Internet Explorer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan