Internet Explorer で定義されていない 'console' のエラー処理
Firebug を使用する場合、console.log("...") のようなステートメント特に Internet Explorer 8 以前のバージョンでは、「console」が未定義であるというエラーが発生することがあります。これを解決するために、ページの先頭に
<script type="text/javascript"> if (!console) console = {log: function() {}}; </script>
のスクリプト ブロックを追加することで回避策を実装しようとしましたが、エラーは解決しませんでした。より効果的な解決策が推奨されます。
if (!window.console) console = ...
このアプローチは、未定義の変数に直接アクセスできないという事実を利用します。逆に、すべてのグローバル変数はグローバル コンテキスト (ブラウザの場合はウィンドウ) の属性として存在します。その結果、window.console などの未定義の属性にアクセスしてもエラーは生成されません。
グローバル変数 window の使用を回避する別の方法は、typeof 演算子を使用することです:
if (typeof console === 'undefined') console = ...
このアプローチでは、値を割り当てる前にコンソールが未定義であることが保証され、エラーが効果的に抑制されます。
以上がInternet Explorer での「コンソールが未定義です」エラーを回避する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。