Как остановить выполнение скрипта js
4 года назад
Человек-Молекула
Ответы
Для остановки выполнения JS кода на странице, можно сделать так:
- Открыть DevTools и перейти на вкладку Sources;
- Выбрать файл с логикой по которому будет вестись работа и найти необходимую строчку кода где необходимо поставить брейкпоинт;
- Слева от строки находится столбец с ее номером. Если на него нажать, то появится синий значок — это и есть брейкпоинт того, чтобы использовать точку останова в DevTools;
Там же, кстати, ими можно и управлять:
- Чтобы отключить брейкпоинт, достаточно убрать галочку рядом с ним
- Удалить брейкпоинт можно с помощью нажатия на правую кнопку мыши около точки останова
Еще бывают точки останова в коде, которые можно самостоятельно поставить в коде. Для создания такого брейкпоинта нужно просто вызвать debugger в коде. Этот подход эквивалентен предыдущему способу, через DevTools, только без использования визуального интерфейса.
Еще есть вариант использовать throw. Инструкция throw позволяет генерировать исключения, определяемые пользователем. При этом выполнение текущей функции будет остановлено (инструкции после throw не будут выполнены), и управление будет передано в первый блок catch в стеке вызовов. Если catch блоков среди вызванных функций нет, выполнение программы будет остановлено.
Например:
Ну и наконец можно использовать точки останова в DOM, если вы собираетесь приостановить код, который изменяет узел DOM или его дочерние элементы. Это делается следующим образом:
- Перейдите во вкладку Elements
- Найдите элемент, на который нужно установить брейкпоинт
- Нажмите на элемент правой кнопкой мыши
- Наведите мышь на Break on, а затем выберите Subtree modifications, Attribute modifications или Node removal в зависимости от того, что вы хотите сделать. Ниже расскажем, что это такое и как работает.
Более подробно про точки останова можно прочитать здесь, в интересной статье, на Хекслете.
3 года назад
Вячеслав Межуревский