如何将开发工具控制台范围更改为函数的本地范围?

How do I change dev tools console scope to be local to a function?

如何使用 Chrome 开发工具在函数的局部范围内评估代码? IE。对于以下代码

const name1 ="alireza"

function person(){
    const name2 ="joe" 
}

在控制台手动执行代码的结果应该是

console.log(name2) //"joe"

这有点棘手,因为您要检查的语句是函数中的唯一语句。

如果您要在以下行中添加另一个语句:

const name1 ="alireza"

function person(){
    const name2 ="joe" 
    const name3 ="bob";
}

那么你可以:

  1. 打开“调试器”选项卡
  2. const name2 ="joe"
  3. 之后的行上创建一个断点
  4. 打开“控制台”选项卡
  5. 键入 person() 到 运行 person 函数
  6. 等待命中断点
  7. Return 到“控制台”选项卡
  8. 键入 console.log(name2);(或者您可以只查看报告所有 in-scope 变量的“调试”选项卡中的调试信息)。

您要找的是breakpoints:

您可以在要检查的函数内动态地 set a breakpoint on a line:devTools 将在该行执行之前中断,您可以在控制台中评估该函数范围内的代码。

或者 - 如果您可以更改代码(您也可以 from devTools) - you can put a debugger statement 您希望执行中断的地方。