--- title: console.log() slug: Web/API/Console/log tags: - API - DOM - Debugging - HTML-tree - Method - Reference - Web Development - console - console.dir() - console.log() - difference - web console translation_of: Web/API/Console/log ---
{{APIRef("Console API")}}

{{domxref("Console")}} の log() メソッドは、ウェブコンソールにメッセージを出力します。このメッセージは単一の文字列 (オプションの置換値を含む) であることもあれば、1 つ以上の JavaScript オブジェクトであることもあります。

{{AvailableInWorkers}}

構文

console.log(obj1 [, obj2, ..., objN]);
console.log(msg [, subst1, ..., substN]);

引数

obj1 ... objN
出力する JavaScript オブジェクトのリスト。各オブジェクトの文字列表現が記述順で出力されます。 Chrome や Firefox の比較的新しいバージョンを使っているなら注意が必要です。これらのブラウザーで記録されるのはオブジェクトへの参照です。そのため、 console.log() を呼び出した時点でのオブジェクトの「値」が表示されるのではなく、内容を見るために開いた時点での値が表示されます。
msg
0 個以上の置換文字列を含む JavaScript 文字列
subst1 ... substN
JavaScript オブジェクトと msg 内の置換文字列を置換。これにより、出力の書式の詳細な制御が可能となります。

詳細については {{domxref("console")}} の「コンソールへのテキスト出力」の節を参照して下さい。

log() と dir() との違い

{{domxref("console.dir()")}} と console.log() の違いは何かという疑問を持つかもしれません。

Chrome では、コンソールに DOM 要素を送信した場合に大きな違いがあります。

ポイント:

特に、console.log は DOM 要素の取り扱いに特化していますが、console.dir はそうではありません。これは、DOM JS オブジェクトの全容を表現しようとする場合に役立ちます。

これらの機能に関する詳細情報が、Chrome Console API reference に掲載されています。

オブジェクトのログ出力

console.log(obj) を使わず、 console.log(JSON.parse(JSON.stringify(obj))) を使用してください。

これにより、ログを記録した瞬間の obj の値を確実に見ることができます。こうしないと、多くのブラウザーでは値が変化したときに常に更新されるライブビューになります。これは望むことではないかもしれません。

仕様書

仕様書 状態 備考
{{SpecName("Console API", "#log", "console.log()")}} {{Spec2("Console API")}} 初回定義

ブラウザーの互換性

{{Compat("api.Console.log")}}

関連情報