Комментарии 7
Хм.. не видел смысла сегодня писать, (тк я злобное зло=)), а поводов троллить нет. но напишу зачем минусовать эти статьи? Вы бы посмотрели, парень пишет целый цикл это уже четвертая где наглядно dev tools для начинающих и не только разбирает. И Вы посмотрите историю у него и читатели есть. Или минус просто так? На автомате? Да эта статья не полноценный ман, Но он и не претендует и в конце концов она гораздо более луТчше информативнее таких И у меня боольшие подорзения назовем это так;-) что набирают их вот тут Хотя это не подорзения но ладно.
Интересно, а есть ли способ выключить debugger;
? А то как-то столкнулся на одном сайте с таким противоотладочным приёмом — по setTimeout
вызывалась функция, которая генерировала другую функцию с debugger;
внутри. Собственно, я полез в отладчик для того, чтобы выяснить, почему страница дико тормозит, но с этим финтом отладка оказалась совершенно невозможной, так как выполнение постоянно приостанавливалось, а снять точку останова было нельзя.
Нужен конкретный пример, чтобы подобрать способ, поэтому пока просто накидаю вариантов.
Можно игнорировать точки останова полностью:
В таком случае код сохранит работоспособность и его можно изучать "в процессе".
Когда игнорирование точек останова не работает, можно попробовать игнорировать файл целиком:
В таком случае файл будет "отключён" от страницы, сайт скорее всего сломается, но код изучить можно будет.
К сожалению, конкретного примера не будет, так как столкнулся с этим давно, просто в памяти запало (тогда-то я впервые и узнал о том, что есть такое ключевое слово debugger;
, да и сам приём показался любопытным (хотя и мерзким), поэтому и запомнился). Но игнорирование исходника не помогло бы, поскольку функция каждый раз генерировалась новая со своим собственным виртуальным исходником «скрипт» (или как он там называется). Короче, суть в том, что отключать бесполезно, на следующем тике будет сгенерирована новая функция и всё опять застопорится. Таймаут тоже было не очистить, так как его идентификатор нигде не сохранялся. Кнопки игнорирования точек останова тогда либо не было, либо же она не работала конкретно с debugger;
, уже не помню.
Введение в отладку на примере Firefox DevTools, часть 4 из 4