IE8 であるサイトを見ていたところ、JavaScript で以下のエラーが出た。


メッセージ: 'console' は宣言されていません。


今までは JavaScript のデバッグといてば、alert を仕込んでおいて、いちいち動作を止めながら値を確認する。。。ということを延々とやっていたわけだが、最近のブラウザなら開発者ツールが付属しており、console オブジェクトも用意され、処理を止めることなくデバッグできるようになった。

しかし、古いブラウザでは console オブジェクトがサポートされていないため、console オブジェクトを使っていると、上記のようなエラーが発生してしまう。

IE8 の場合はどうかといえば、通常は console オブジェクトはサポートされていないのだが、開発者ツールを立ち上げているときは console オブジェクトがサポートされている状態のようだ。ややこしい。