Может ли отладчик JavaScript делать "когда эта переменная читается", точка останова там? - PullRequest
3 голосов
/ 04 июня 2009

Может ли отладчик JavaScript делать "когда эта переменная читается", точка останова там, как отладчик C / C ++?

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

Ответы [ 5 ]

5 голосов
/ 13 декабря 2009

Попробуйте , определив получатель для вашей переменной. Получатель - это фрагмент кода, который запускается всякий раз, когда кто-то получает доступ к значению объекта. (Эта относительно новая функция JavaScript недоступна в IE, но если вы просто используете ее для отладки в Firefox, все должно быть в порядке.)

Ваш получатель может просто вернуть значение, но вы можете установить точку останова в вашем получателе. Или, что еще лучше, вы можете заставить getter выполнить оператор отладчик для автоматической остановки.

0 голосов
/ 28 июня 2013

С помощью Firefox и Firebug вы фактически можете установить точку останова при изменении свойства. Установите точку останова, где будет создана эта переменная, а затем найдите ее в разделе наблюдения, а затем установите «Break on change property» для этого свойства, щелкнув правой кнопкой мыши по нему.

0 голосов
/ 24 июля 2010

У Дана Фабулича есть более твердое решение с помощью метода доступа.

Но недавно я заметил, что более новые версии Firebug могут нарушать изменения свойств. Найдите его на вкладках DOM.

0 голосов
/ 04 июня 2009

Я не знаю ни одного способа сделать то, что вы просите, но вы можете попробовать передать значение, которое может нарушить код библиотеки? Тогда вы получите исключение, которое можно увидеть в любом отладчике JS.

0 голосов
/ 04 июня 2009
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...