Semasa memanfaatkan JavaScript, adalah penting untuk menyedari bahawa Internet Explorer tidak mempunyai pelaksanaan ECMAScript untuk Array.prototype.indexOf (), termasuk versi sehingga IE8. Had ini tidak menimbulkan halangan yang ketara, kerana anda boleh melanjutkan fungsi ini pada halaman anda dengan mudah menggunakan kod berikut:
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; }
Bila Melaksanakan:
Anda boleh bertanya sama ada melaksanakan sambungan ini perlu dilakukan pada semua halaman dengan semakan untuk kewujudan fungsi prototaip. Walau bagaimanapun, adalah sangat disyorkan untuk melaksanakannya hanya pada halaman yang memerlukan fungsi ini secara jelas.
Penyusutan:
Elakkan kod pengesanan penyemak imbas apabila boleh, kerana ia biasanya dianggap tidak diingini. Sebaliknya, bergantung pada pengesanan ciri untuk mengenal pasti kehadiran fungsi Array.indexOf() dan melaksanakannya dengan sewajarnya. Menggunakan semakan yang disyorkan di atas memastikan keserasian tanpa kod khusus penyemak imbas yang tidak diperlukan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Isu `Array.prototype.indexOf()` dalam Internet Explorer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!