将console.log值分配给变量

时间:2013-03-17 14:53:02

标签: javascript console.log

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

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

5 个答案:

答案 0 :(得分:17)

如果你想对已经记录的对象(一次性)做这件事,chrome控制台提供了一个很好的解决方案。

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

enter image description here

答案 1 :(得分:16)

您可以使用自己的功能覆盖标准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

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

答案 2 :(得分:15)

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

> 1+1;
  2
> $_
  2

答案 3 :(得分:3)

mirrormx的答案的衍生物,但更方便。我不需要编写一个函数,只需将它放在当下的任何地方。

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

答案 4 :(得分:2)

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

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

请注意,我的功能是,例如,console.log可能性更高级