web-dev-qa-db-ja.com

変数にconsole.log値を割り当てます

console.logを使用して出力された変数にJavaScriptオブジェクトを割り当てるにはどうすればよいですか?

私はChromeコンソールにいます。Rubyの場合、test = _を使用して、印刷された最新のアイテムにアクセスします。

21
Dru

標準のconsole.log()関数を独自の関数でオーバーライドして、必要な動作を追加できます。

console.oldLog = console.log;

console.log = function(value)
{
    console.oldLog(value);
    window.$log = value;
};

// Usage

console.log('hello');

$log // Has 'hello' in it

この方法では、既存のロギングコードを変更する必要はありません。また、配列を追加して、印刷されたオブジェクト/値の履歴全体を格納するように拡張することもできます。

17
mirrormx

すでにログに記録されているオブジェクトに対してこれを行う場合(1回限り)、chrome consoleが適切なソリューションを提供します。

コンソールで印刷されたオブジェクトにカーソルを合わせ、右クリックして、[グローバル変数として保存]をクリックします。 Chromeは、コンソールで使用できる一時的なvar名に割り当てます。

enter image description here

25
Nick Brady

Chromeデベロッパーツールでは、$_

> 1+1;
  2
> $_
  2
15
Stewie

Mirrormxの答えの派生物ですが、より便利です。関数を記述する必要はなく、その瞬間にどこにでも配置できます。

console.log(window.$log = data);
3
mattk

コマンドラインAPIの chrome reference は次のとおりです。 $ _変数はありますが、「最後に評価された式の値を返します」という出力はありません。独自のログ関数を次のように作成できます。

function log(data){
   console.log(data);
   return data;
}
// after that you can access last printed value by $_

たとえば、私の機能はconsole.logの可能性がはるかに進んでいることに注意してください

2
kirugan