IE8 の配列に対するindexOf の欠落: 解決策
この一般的な JavaScript 関数では、条件内で Array.prototype.indexOf を使用します。 ( allowed.indexOf(ext[1]) == -1) は、IE8 で問題を引き起こします。その理由を理解するために、IE8 の独特の動作を詳しく見てみましょう。
IE8 には、Opera、Firefox、Chrome などの最新のブラウザとは異なり、配列の IndexOf メソッドがありません。この省略は、indexOf メソッドを導入した ECMAScript 5 標準が IE8 でサポートされていなかったことが原因です。その結果、配列に対してindexOf メソッドを使用しようとすると、IE8 でエラーが発生します。
この問題を解決するには、次の戦略を採用できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
このコード スニペットは MDN から提供されており、indexOf メソッドのポリフィルを定義します。これにより、IE8 を含むすべての環境で Array.prototype.indexOf が利用可能になります。配列でindexOfを使用する前にこのコードを追加することで、IE8を含むすべてのブラウザで正しく機能することを確認できます。
このソリューションを実装すると、元の関数がIE8でシームレスに動作し、開発者が次のことを確認できるようになります。ユーザーが選択したファイルでは、特定のファイル拡張子が許可されます。
以上がIE8 の配列の `indexOf` メソッドの問題を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。