debugger

The debugger statement invokes any available debugging functionality, such as setting a breakpoint. If no debugging functionality is available, this statement has no effect.

Syntax

debugger;

Examples

The following example shows code where a debugger statement has been inserted, to invoke a debugger (if one exists) when the function is called.

function potentiallyBuggyCode() {
    debugger;
    // do potentially buggy stuff to examine, step through, etc.
}

When the debugger is invoked, execution is paused at the debugger statement. It is like a breakpoint in the script source.

Paused at a debugger statement.

Specifications

Specification Status Comment
ECMAScript Latest Draft (ECMA-262)
The definition of 'Debugger statement' in that specification.
Draft  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Debugger statement' in that specification.
Standard  
ECMAScript 5.1 (ECMA-262)
The definition of 'Debugger statement' in that specification.
Standard Initial definition
ECMAScript 3rd Edition (ECMA-262)
The definition of 'Debugger statement' in that specification.
Standard  
ECMAScript 1st Edition (ECMA-262)
The definition of 'Debugger statement' in that specification.
Standard Only mentioned as reserved word.

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

See also

Document Tags and Contributors

 Last updated by: jameshkramer,