2013-10-03 4 views
2

Обычно, когда возникает ошибка в скрипте JavaScript, вы получаете хорошее сообщение о том, какая строка и в каком файле произошла ошибка. Однако при использовании TRY и CATCH сообщение указывает на место, где возникает ошибка.Проверка ошибок Javascript и TRY и CATCH

Есть ли способ использовать TRY и CATCH, но все же есть сообщение об ошибке, точное указание на то, где произошла ошибка?

[править]

HTA приложения ограничены IE 7. Даже если у вас есть более поздние версии IE установлен, HTA будет по-прежнему использовать IE 7.

+1

Большинство инструментов для веб-разработки позволят вам установить точку останова в JavaScript-коде - просто установите точку останова в содержимом вашего предложения 'catch', и когда точка останова попадет, проверьте стек выполнения. – Mac

+0

Как это сделать? – posfan12

ответ

1

Ну, try-catch IsInt для отладки, это для обработки ошибок. Если вы хотите отлаживать, просто поставьте оператор debugger; в начале вашего блока try-catch. Большинство браузеров поддерживают этот оператор как встроенную точку останова. Затем вы сможете установить часы и выполнить код за строкой, чтобы отслеживать вашу проблему. Обратите внимание, что в большинстве современных браузеров объект ошибки будет иметь свойство stack, которое предлагает след, функции которого вызывают, но нестандартно.

+0

Мой код не работает в браузере. Это приложение для HTML (расширение .hta в Windows). Я не думаю, что могу добавить там контрольные точки. – posfan12

+0

@ posfan12, Не запускаете ли вы приложение в IE? – plalx

+0

Не уверен, следует ли положить оператор отладчика в начале блока try или в начало блока catch. (Есть два блока.) Кроме того, я попытался запустить следующий код, но получил «undefined» в результате. попробовать { \t thisfunctiondoesnotexist() } поймать (е) { \t оповещения (e.stack) } – posfan12

Смежные вопросы