console.log()

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

注: この機能は Web Worker 内で利用可能です。

構文

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

引数

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

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

log() と dir() との違い

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

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

ポイント:

  • console.log は、要素を HTML 状のツリーとして出力します。
  • console.dir は、要素を JSON 状のツリーとして出力します。

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

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

オブジェクトのログ出力

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

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

仕様書

仕様書 状態 備考
Console API
console.log() の定義
現行の標準 初回定義

ブラウザーの互換性

BCD tables only load in the browser

関連情報