27

如何将 JavaScript 对象分配给使用打印的变量console.log

我在 Chrome 控制台中。使用 Ruby,我将使用它test = _来访问最近打印的项目。

4

5 回答 5

37

如果您想对已记录的对象执行此操作(一次性),chrome 控制台提供了一个很好的解决方案。

将鼠标悬停在控制台中打印的对象上,右键单击,然后单击“存储为全局变量”。Chrome 会为您分配一个临时 var 名称,您可以在控制台中使用该名称。

在此处输入图像描述

于 2017-01-18T18:01:24.633 回答
21

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

这样,您不必更改现有的日志记录代码。您还可以扩展它,添加一个数组并存储打印对象/值的整个历史记录。

于 2013-03-17T15:15:37.723 回答
17

在 Chrome 开发者工具中,您可以通过以下方式访问最后一项$_

> 1+1;
  2
> $_
  2
于 2013-03-17T15:03:22.427 回答
5

mirrormx 答案的衍生物,但更方便。我不需要编写函数,可以一时冲动把它放在任何地方。

console.log(window.$log = data);
于 2014-07-23T18:45:50.487 回答
2

这是命令行 api 的chrome 参考。有 $_ 变量,但未打印“返回最近评估的表达式的值”,您可以像这样制作自己的日志函数:

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

请注意,我的功能例如,console.log 可能性要高级得多

于 2013-03-17T15:03:17.997 回答