私のGoogle Chrome=拡張機能でこれを行うと言います:
console.log(msg);
Chromeデバッガは、同様のメッセージを次のようにグループ化します。
オフにしてメッセージをそのまま投稿する方法はありますか?
同一の連続する行のみが折りたたまれますが、それほど問題はありませんが、コンソールの右上隅にある設定ボタンを使用して、「タイムスタンプを表示」を有効にすると、行が別の行に表示されます。
これで、連続した重複のみが折りたたまれていることがわかります。
_msgs = ['hello', 'world', 'there'];
for (i = 0; i < 20; i++) console.log(msgs[Math.floor((i/3)%3)])
_
console api には、コードの追跡に役立つ他の多くの関数があります。たとえば、console.count(label)
は、ログが何回記録されたかのカウントを含むラベルをログに記録し、console.group()
は他のログ呼び出しをグループ化し、console.timeline(label)
はログをタイムライン。
誰かが同じ問題を抱えていました: Google Chrome開発者ツールコンソールのロギング…ほとんど役に立たない? この機能を無効にする答えがありません。
回避策として、開発者ツールの設定でコンソールのShow timestampsを有効にすることができます。
メッセージは、previousで同一の場合にのみ折りたたまれます。
メッセージが折りたたまれないようにするには、ログレベルを変更するか、ログ出力を使用します。
console.log
およびconsole.debug
は、Chromeの開発ツールで視覚的に類似しています(つまり、その前にアイコンがありません)。冗長フィルターを使用しない場合は、console.log
およびconsole.debug
は問題を解決します:
console.log('message');
console.debug('message');
console.log('message');
// Convenience function:
function log() {
log.counter = log.counter ? log.counter + 1 : 1;
console[log.counter % 2 ? 'log' : 'debug'].apply(console, arguments);
}
希望する結果を得るもう1つの方法は、メッセージの前に非表示の文字を挿入することです(注:%s
余分なスペースが表示されないようにします( devtoolsのフォーマットオプション を参照)。また、視覚的な文字がまったく表示されないようにするZWSP。):
function log() {
log.counter = log.counter ? log.counter + 1 : 1;
var args = [].slice.call(arguments);
if (log.counter % 2) {
args.unshift('%s\u200B'); // ZWSP (zero-width space, you won't see it)
}
console.log.apply(console, args);
}