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()
を呼び出すことでコンソールをクリアできます。
注:最初に開発者ツールを起動してから、ページを更新して動作させる必要があるようです。
バージョン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); } };
}
[明らかにalert(msg)を削除します。動作確認後のステートメント]
「console」はInternet Explorerの未定義エラー 他のソリューションと詳細も参照してください
IEには多くのFirebug機能を提供する Firebug Lite があります。
他のブラウザの行番号を保持するシンプルなIE7以下のシム:
/* console shim*/
(function () {
var f = function () {};
if (!window.console) {
window.console = {
log:f, info:f, warn:f, debug:f, error:f
};
}
}());
彼の著書「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, " "));
}
}
Console.logに限定されたIE8またはコンソールのサポート(デバッグ、トレースなしなど)の場合、以下を実行できます。
Console OR console.log undefinedの場合:コンソール関数(トレース、デバッグ、ログなど)のダミー関数を作成します
window.console = { debug : function() {}, ...};
それ以外の場合、console.logが定義されている(IE8)およびconsole.debug(その他)が定義されていない場合:すべてのログ機能をconsole.logにリダイレクトします。これにより、これらのログを保持できます。
window.console = { debug : window.console.log, ...};
さまざまなIEバージョンでのアサートのサポートについては不明ですが、提案は歓迎します。
旧バージョンのIE(IE8より前)では、IE Developer Toolbarでコンソールログを表示するのは簡単ではありません。次のツールバーは私にとって素晴らしいツールです。
これの主な利点は、IE6またはIE7のコンソールを提供することです。そのため、(コンソールログで)エラーを確認できます。
クロスブラウザラッパーを使用できます: https://github.com/MichaelZelensky/log.js