We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

デバッガの Web コンソールにメッセージを出力します。

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

構文

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

引数

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

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

仕様

仕様書 策定状況 コメント
Console API
console.log() の定義
現行の標準 最初期の定義

ブラウザ実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応 あり1248 あり あり
Substitution strings あり1 あり9102 ? ?
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 ? ? あり4 ? ? ?
Substitution strings ? ? あり9 ? ? ?

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.

2. %c is not supported, %d will render as 0 when it is not a number

console.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))); とした方が良いでしょう。

こうすれば確実にログ時点での値を参照出来ます。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: woodmix, SphinxKnight, yyss, fscholz, khalid32, ethertank
最終更新者: woodmix,