admin管理员组

文章数量:1332395

When I debug javascript with the Chrome console, I want to change a local variable of a function. I know how to change the value of global variables, but how do I change the value of a local variable when debugging in the Chrome console?

When I debug javascript with the Chrome console, I want to change a local variable of a function. I know how to change the value of global variables, but how do I change the value of a local variable when debugging in the Chrome console?

Share Improve this question edited Jun 12, 2016 at 10:17 Peter Brittain 13.6k3 gold badges44 silver badges59 bronze badges asked Jun 12, 2016 at 10:06 footossfootoss 631 silver badge7 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 4

You don't debug in the Chrome console. You do debug in the Chrome debugger. And if you are stopped at a breakpoint in the debugger, you can use the console to change the value of any in-scope variable by assigning to it.

For instance, open dev tools and run this code, reading the ments:

function foo() {
  var bar = 42;
  // Normally, you don't have to use a hardcoded breakpoint like
  // the one that follows, you can set a breakpoint from within the
  // debugger just by navigating to the line of code and clicking in
  // the left-hand gutter. But in Stack Snippets the easiest way to
  // do one is to use the debugger statement:
  debugger;
  // Now, when stopped on the breakpoint, type this in the console:
  // bar = 67;
  // ...and press Enter.
  // Then hit the arrow button to allow the script to continue
  console.log(bar); // ...and this will log 67 instead of 42.
}
foo();

Try setting a break point where you would want to redefine the local variable's value to a different one. Then you get access to all the data in that scope.

This might help

本文标签: javascriptHow to change the value of js local variable when debug in Chrome consoleStack Overflow