IE用のコンソールロガーはありますか?一連のテスト/アサーションをコンソールに記録しようとしていますが、IEではこれを実行できません。
IE用のコンソールロガーはありますか?一連のテスト/アサーションをコンソールに記録しようとしていますが、IEではこれを実行できません。
回答:
IE8スクリプトコンソールにアクセスするには、「開発者ツール」(F12)を起動します。[スクリプト]タブをクリックし、右側の[コンソール]をクリックします。
JavaScriptコード内から、次のいずれかを実行できます。
<script type="text/javascript">
console.log('some msg');
console.info('information');
console.warn('some warning');
console.error('some error');
console.assert(false, 'YOU FAIL');
</script>
また、を呼び出してコンソールをクリアすることもできますconsole.clear()
。
注:最初に開発者ツールを起動してからページを更新する必要があります。
console.log()
が中断することに注意してください。常にあなたの電話を守るwindow.console && console.log('stuff');
バージョン8以降、Internet Explorerには他のブラウザーと同様に独自のコンソールがあります。ただし、コンソールが有効になってconsole
いない場合、オブジェクトは存在せず、を呼び出すとconsole.log
エラーがスローされます。
別のオプションは、log4javascript(完全な開示:私が書いたもの)を使用することです。これには、IE> = 5を含むすべてのメインストリームブラウザーで機能する独自のロギングコンソールと、未定義の問題を回避するブラウザー独自のコンソールのラッパーがありconsole
ます。
console.log()
コマンドを本番環境にリリースする場合は、IEに何らかの修正を加える必要があります。これconsole
は、F12
デバッグモードでのみ定義されるためです。
if (typeof console == "undefined") {
this.console = { log: function (msg) { alert(msg); } };
}
[明らかにアラートを削除します(msg); 機能することを確認したら、ステートメント]
参照してください。「コンソール」は、Internet Explorer用の未定義エラーで他のソリューションと詳細について
あるFirebugのLiteと IEでFirebugの機能の多くを提供します。
彼の著書「Secrets of Javascript Ninja」で、John Resig(jQueryの作成者)は、クロスブラウザーconsole.logの問題を処理する非常に単純なコードを持っています。彼は、すべてのブラウザで機能するログメッセージが必要であることを説明し、以下にそのコードを示します。
function log() {
try {
console.log.apply(console, arguments);
} catch(e) {
try {
opera.postError.apply(opera, arguments);
}
catch(e) {
alert(Array.prototype.join.call( arguments, " "));
}
}
}
そのスニペットに欠落があります。:)
IE8またはコンソールのサポートがconsole.logに制限されている場合(デバッグ、トレースなどはありません)、以下を実行できます。
コンソールまたはconsole.logが未定義の場合:コンソール関数(トレース、デバッグ、ログなど)のダミー関数を作成します。
window.console = {
debug : function() {}, ...};
そうでない場合、console.logが定義されていて(IE8)、console.debug(その他)が定義されていなければ、すべてのロギング機能をconsole.logにリダイレクトします。これにより、これらのログを保持できます。
window.console = {
debug : window.console.log, ...};
さまざまなIEバージョンでのアサートサポートについては不明ですが、提案は大歓迎です。
クロスブラウザーラッパーを使用できます:https : //github.com/MichaelZelensky/log.js
IEの以前のバージョン(IE8より前)では、IE開発者ツールバーにコンソールログを表示するのは簡単ではありません。時間をかけて多くの異なるソリューションを試した後、最後に、次のツールバーは私にとって素晴らしいツールです。
これの主な利点は、IE6またはIE7にコンソールを提供することです。これにより、コンソールログでエラーの内容を確認できます。
console.log()
IEの開発ツールが開いているときにのみ機能します(そう、IEはひどいです)。stackoverflow.com/questions/7742781/…を