7

Как установить точку останова JavaScript из кода в Chrome?

2

Я хочу заставить отладчик Chrome остановиться на строке через код или с помощью какой-либо специальной комментарной метки, вроде console.break(). Как это можно реализовать?

5 ответ(ов)

12

Вы можете использовать debugger; в своем коде. Если консоль разработчика открыта, выполнение остановится на этой строке. Этот метод также работает в Firebug.

0

Как уже упоминали другие, debugger; — это правильный подход. Я написал небольшой скрипт, который вы можете использовать из командной строки в браузере для установки и снятия точки останова прямо перед вызовом функции: http://andrijac.github.io/blog/2014/01/31/javascript-breakpoint/

0

Чтобы установить слушатель событий для нажатия кнопки и вызвать debugger;, вы можете использовать следующий код:

$("#myBtn").click(function() {
    debugger;   
});

Пример

Вы можете протестировать это в онлайн-редакторе, например, по следующей ссылке: http://jsfiddle.net/hBCH5/.

Ресурсы по отладке в JavaScript

0

Да, это возможно, и есть множество причин, по которым вы можете захотеть это сделать. Например, если вам нужно отладить бесконечный цикл JavaScript, который останавливает загрузку инструментов разработчика (например, Chrome DevTools или Firebug) в начале загрузки страницы.

Вы можете ознакомиться с разделом 2 по следующей ссылке:

http://www.laurencegellert.com/2012/05/the-three-ways-of-setting-breakpoints-in-javascript/

Также вы можете просто добавить строку с словом debugger в ваш код в нужном месте для тестирования.

0

Ответ:

Точка останова (Breakpoint):

Точка останова останавливает выполнение кода и позволяет вам исследовать значения переменных JavaScript. После того, как вы проанализировали значения, вы можете возобновить выполнение кода (обычно с помощью кнопки "Воспроизвести").

Отладчик (Debugger):

Команда debugger; останавливает выполнение JavaScript и вызывает функцию отладки. Инструкция debugger приостанавливает выполнение, но не закрывает файлы и не очищает переменные.

Пример:

function checkBuggyStuff() {
  debugger; // выполняем проблемные действия для анализа.
};

Таким образом, вы можете использовать точки останова и команду debugger для эффективной отладки вашего кода.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь