JavaScript - отладка
Время от времени разработчики допускают ошибки при кодировании. Ошибка в программе или сценарии называетсяbug.
Процесс поиска и исправления ошибок называется debuggingи является нормальной частью процесса разработки. В этом разделе рассматриваются инструменты и методы, которые могут помочь вам в решении задач отладки.
Сообщения об ошибках в IE
Самый простой способ отслеживать ошибки - это включить информацию об ошибках в вашем браузере. По умолчанию Internet Explorer показывает значок ошибки в строке состояния при возникновении ошибки на странице.
Дважды щелкнув этот значок, вы попадете в диалоговое окно, в котором отображается информация о конкретной возникшей ошибке.
Так как этот значок легко не заметить, Internet Explorer дает возможность автоматически отображать диалоговое окно «Ошибка» при возникновении ошибки.
Чтобы включить эту опцию, выберите Tools → Internet Options → Advanced tab. а затем, наконец, проверьте "Display a Notification About Every Script Error" вариант коробки, как показано ниже -
Сообщения об ошибках в Firefox или Mozilla
Другие браузеры, такие как Firefox, Netscape и Mozilla, отправляют сообщения об ошибках в специальное окно, называемое JavaScript Console или же Error Consol. Для просмотра консоли выберитеTools → Error Consol or Web Development.
К сожалению, поскольку эти браузеры не показывают визуальной индикации возникновения ошибки, вы должны держать консоль открытой и следить за ошибками во время выполнения вашего скрипта.
Уведомления об ошибках
Уведомления об ошибках, которые отображаются на консоли или в диалоговых окнах Internet Explorer, являются результатом как синтаксических ошибок, так и ошибок времени выполнения. Это уведомление об ошибке включает номер строки, в которой произошла ошибка.
Если вы используете Firefox, вы можете щелкнуть ошибку, доступную в консоли ошибок, чтобы перейти к той строке в скрипте, где есть ошибка.
Как отлаживать скрипт
Есть разные способы отладки вашего JavaScript -
Используйте валидатор JavaScript
Один из способов проверить ваш код JavaScript на наличие странных ошибок - запустить его через программу, которая проверяет его, чтобы убедиться, что он действителен и соответствует официальным синтаксическим правилам языка. Эти программы называютсяvalidating parsers или просто validators для краткости и часто поставляются с коммерческими редакторами HTML и JavaScript.
Самый удобный валидатор для JavaScript - это JavaScript Lint Дугласа Крокфорда, который бесплатно доступен на сайте Douglas Crockford's JavaScript Lint .
Просто посетите эту веб-страницу, вставьте свой код JavaScript (только JavaScript) в предоставленную текстовую область и нажмите кнопку jslint. Эта программа проанализирует ваш код JavaScript, гарантируя, что все определения переменных и функций соответствуют правильному синтаксису. Он также будет проверять операторы JavaScript, такие как if иwhile, чтобы они тоже следовали правильному формату
Добавьте код отладки в свои программы
Вы можете использовать alert() или же document.write()методы в вашей программе для отладки вашего кода. Например, вы можете написать следующее:
var debugging = true;
var whichImage = "widget";
if( debugging )
alert( "Calls swapImage() with argument: " + whichImage );
var swapStatus = swapImage( whichImage );
if( debugging )
alert( "Exits swapImage() with swapStatus=" + swapStatus );
Изучив содержание и порядок alert() по мере их появления вы можете очень легко проверить работоспособность вашей программы.
Используйте отладчик JavaScript
Отладчик - это приложение, которое ставит все аспекты выполнения скрипта под контроль программиста. Отладчики обеспечивают детальный контроль над состоянием скрипта через интерфейс, который позволяет вам проверять и устанавливать значения, а также контролировать поток выполнения.
После того, как сценарий был загружен в отладчик, его можно запускать по одной строке за раз или дать указание остановиться в определенных точках останова. После остановки выполнения программист может проверить состояние скрипта и его переменных, чтобы определить, что-то не так. Вы также можете отслеживать изменения в значениях переменных.
Последнюю версию отладчика Mozilla JavaScript Debugger (под кодовым названием Venkman) для браузеров Mozilla и Netscape можно загрузить по адресу http://www.hacksrus.com/~ginda/venkman
Полезные советы для разработчиков
Вы можете помнить следующие советы, чтобы уменьшить количество ошибок в ваших скриптах и упростить процесс отладки:
Используйте много comments. Комментарии позволяют вам объяснить, почему вы написали сценарий именно так, а также объяснить особенно сложные участки кода.
Всегда используйте indentationчтобы ваш код было легко читать. Операторы с отступом также упрощают сопоставление начальных и конечных тегов, фигурных скобок и других элементов HTML и скриптов.
Написать modular code. По возможности сгруппируйте свои операторы в функции. Функции позволяют группировать связанные операторы, а также тестировать и повторно использовать части кода с минимальными усилиями.
Будьте последовательны в том, как вы называете свои переменные и функции. Попробуйте использовать достаточно длинные имена, чтобы иметь смысл и которые описывают содержимое переменной или цель функции.
Используйте единый синтаксис при именовании переменных и функций. Другими словами, оставьте их все в нижнем или верхнем регистре; если вы предпочитаете нотацию Camel-Back, используйте ее последовательно.
Test long scriptsпо модульному принципу. Другими словами, не пытайтесь написать весь сценарий до тестирования какой-либо его части. Напишите кусок и заставьте его работать, прежде чем добавлять следующую часть кода.
Использовать descriptive variable and function names и избегайте использования односимвольных имен.
Watch your quotation marks. Помните, что кавычки используются в парах вокруг строк и что обе кавычки должны быть одного стиля (одинарные или двойные).
Watch your equal signs. Вы не должны использовать одиночный знак = для сравнения.
Объявить variables explicitly используя var ключевое слово.