console.log()

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

註: この機能は Web Workers 内で利用可能です。

構文

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() の定義
現行の標準 初回定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
logChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 4IE 完全対応 8Opera 完全対応 10.5Safari 完全対応 3WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 11Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0
Substitution stringsChrome 完全対応 1
補足
完全対応 1
補足
補足 In version 28, if a negative value is passed to %d, it will be rounded down to the closest negative integer, so -0.1 becomes -1.
Edge 完全対応 12
補足
完全対応 12
補足
補足 Before Edge 79, %c is not supported.
補足 Before Edge 79, %d outputs a 0 if the specified value isn't a number.
Firefox 完全対応 9IE 完全対応 10
補足
完全対応 10
補足
補足 %c is not supported.
補足 %d outputs a 0 if the specified value isn't a number.
Opera 完全対応 15Safari ? WebView Android 完全対応 1
補足
完全対応 1
補足
補足 In version 28, if a negative value is passed to %d, it will be rounded down to the closest negative integer, so -0.1 becomes -1.
Chrome Android 完全対応 18
補足
完全対応 18
補足
補足 In version 28, if a negative value is passed to %d, it will be rounded down to the closest negative integer, so -0.1 becomes -1.
Firefox Android 完全対応 9Opera Android 完全対応 14Safari iOS ? Samsung Internet Android 完全対応 1.0
補足
完全対応 1.0
補足
補足 In Samsung Internet 1.5, if a negative value is passed to %d, it will be rounded down to the closest negative integer, so -0.1 becomes -1.

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

関連情報