--- title: debugger slug: Web/JavaScript/Reference/Statements/debugger translation_of: Web/JavaScript/Reference/Statements/debugger ---
{{jsSidebar("Statements")}}

debugger 的宣告會執行可用的除錯功能,例如設定斷點。如果沒有可用的除錯功能,這個宣告沒有任何作用。

語法

debugger;

示例

以下示例示範了插入 debugger 宣告的程式碼,它會在函式被呼叫、而且有除錯器的時候執行除錯器。

function potentiallyBuggyCode() {
    debugger;
    // 執行並驗證一些潛在的問題、或是單步執行之類的。
}

呼叫除錯器時,程式會在 debugger 宣告處暫停執行。它有點像是程式碼的斷點。

Paused at a debugger statement.

規範

規範 狀態 註解
{{SpecName('ESDraft', '#sec-debugger-statement', 'Debugger statement')}} {{Spec2('ESDraft')}}
{{SpecName('ES6', '#sec-debugger-statement', 'Debugger statement')}} {{Spec2('ES6')}}
{{SpecName('ES5.1', '#sec-12.15', 'Debugger statement')}} {{Spec2('ES5.1')}} 初期定義
{{SpecName('ES3', '#sec-7.5.3', 'Debugger statement')}} {{Spec2('ES3')}}
{{SpecName('ES1', '#sec-7.4.3', 'Debugger statement')}} {{Spec2('ES1')}} 只作為保留字而提到

瀏覽器相容性

{{Compat("javascript.statements.debugger")}}

參見