Странная ошибка отладчика Chrome Developer Tools

#javascript #google-chrome #underscore.js #google-chrome-devtools #javascript-debugger

#javascript #google-chrome #underscore.js #google-chrome-devtools #javascript-отладчик

Вопрос:

Время от времени, когда я просматриваю страницу в Chrome с открытыми инструментами разработчика, и на этой странице есть подчеркивание, инструменты разработчика внезапно переходят в режим отладчика и останавливаются в том же месте, строка 1206 из underscore.js , которая является строкой, начинающей «рендеринг» в этом разделе:

 try {
  render = new Function(settings.variable || 'obj', '_', source);
} catch (e) {
  e.source = source;
  throw e;
}
  

Я не прошу эту чертову штуку отлаживать, и я не добавляю точку останова в этом месте. У меня это есть на нескольких разных страницах. Кто-нибудь еще видел это явление, и могу ли я что-нибудь сделать, чтобы остановить его?

введите описание изображения здесь

Ответ №1:

Приостановлено на точке останова JavaScript

Это означает, что скрипт обнаружил следующее утверждение:

 debugger;
  

В данном конкретном случае, похоже debugger; , что где-то в передаваемой строке new Function (вам нужно будет посмотреть на переменные области видимости и найти source значение, чтобы проверить это).

Комментарии:

1. Спасибо Niet — у меня нет этой строки в моем собственном коде, и она не появляется в underscore.js — Я должен буду попробовать это в следующий раз, когда это произойдет, и сообщить о результатах здесь.

2. Хорошо, это только что произошло снова.. Панель переменных области видимости в Dev Tools не расширяется, поэтому там ничего не видно.. Я не могу получить значение для источника из консоли, вне области видимости. Я все делаю правильно? Только что проверил файл с минимизированным подчеркиванием, который я включаю, и в нем определенно нет строки debugger, и ее нет в моем проекте. Странно!