访问 Chrome 控制台上次记录的值

当我直接在 Chrome 控制台中计算一个表达式时,比如

1 + 1

然后我可以使用

$_

enter image description here

但是,如果该值是来自应用程序内部的 console.log 的结果,而不是直接键入到控制台中的表达式,则无法使用 $_ 访问该值。

enter image description here

有没有一种方法可以访问最后一个已计算的表达式,而不管它来自哪里?

26672 次浏览

解决这个问题的方法是在全局命名空间中定义一个变量。据推测,您的 console.log(local_variable)位于一个函数中。

<script>
var global_variable = null;


function some_function() {
var local_variable = 0;
global_variable = local_variable;
console.log(local_variable);
}
</script>

在这里,当调用 some_function()时,您的 local_variable将被记录下来,但是您可以在控制台中键入 global_variable以快速获得它的值并使用它。

在它被记录到控制台之后,您可以右键单击它,并获得一个选项来存储为全局对象。单击这个命令将定义一个新的变量,如‘ temp1’,它将指向该变量。这里有一个视频的行动(不是我的).

通过设置断点,您可以使用 Chrome 的 DevTools 在执行的任何时候访问任何已计算的表达式。

您记录的表达式应该在控制台中有一个可单击的行号-跟随链接,然后在代码行上设置断点(应该是您的 console.log)。

关于断点的完整指南:
Https://developers.google.com/web/tools/chrome-devtools/javascript/breakpoints

只需按照以下步骤:

  1. 用右键单击结果
  2. 保存为全局变量
  3. 副本(临时数字1)