Debugger

    Node’s debugger client doesn’t support the full range of commands, but
    simple step and inspection is possible. By putting the statement debugger;
    into the source code of your script, you will enable a breakpoint.

    For example, suppose myscript.js looked like this:

    The repl command allows you to evaluate code remotely. The next command
    steps over to the next line. There are a few other commands available and more
    to come. Type help to see others.

    You can watch expression and variable values while debugging your code.
    On every breakpoint each expression from the watchers list will be evaluated
    in the current context and displayed just before the breakpoint’s source code
    listing.

    • cont, c - Continue execution
    • step, s - Step in
    • , o - Step out
    • pause - Pause running code (like pause button in Developer Tools)
    • setBreakpoint(), sb() - Set breakpoint on current line
    • setBreakpoint(line), sb(line) - Set breakpoint on specific line
    • setBreakpoint('fn()'), sb(...) - Set breakpoint on a first statement in
      functions body
    • setBreakpoint('script.js', 1), sb(...) - Set breakpoint on first line of
      script.js
    • clearBreakpoint, cb(...) - Clear breakpoint

    It is also possible to set a breakpoint in a file (module) that
    isn’t loaded yet:

    • backtrace, bt - Print backtrace of current execution frame
    • watch(expr) - Add expression to watch list
    • unwatch(expr) - Remove expression from watch list
    • watchers - List all watchers and their values (automatically listed on each
      breakpoint)
    • repl - Open debugger’s repl for evaluation in debugging script’s context
    • run - Run script (automatically runs on debugger’s start)
    • restart - Restart script
    • kill - Kill script
    • scripts - List all loaded scripts
    • version - Display v8’s version

    The V8 debugger can be enabled and accessed either by starting Node with
    the --debug command-line flag or by signaling an existing Node process
    with SIGUSR1.

    • - Connects to the process via the URI such as localhost:5858