Как найти ошибки синтаксиса Javascript

Я пишу код JavaScript и делаю огромное количество глупых ошибок в синтаксисе. Но единственный способ выяснить, в какой строке находится ошибка, - это начать комментировать только что написанный фрагмент кода и перезагрузить его в браузер, чтобы выяснить, где моя ошибка ');' является.

Как "скомпилировать" исходный код JavaScript, чтобы убедиться, что он синтаксически правильный, чтобы я мог отладить его в браузере?

11 ответов

Решение

Ctrl + Shift + J в Firefox, если вы не ловите свои ошибки до времени выполнения. Конечно, firebug работает лучше, но это быстрый способ.

http://www.javascriptlint.com/

Вот несколько распространенных ошибок, которые ищет JavaScript Lint:

  • Недостающие точки с запятой в конце строки.
  • Фигурные скобки без if, for, while и т. Д.
  • Код, который никогда не запускается из-за возврата, выброса, продолжения или прерывания.
  • Операторы case в переключателе, которые не имеют оператора break.
  • Начальные и конечные десятичные точки на числе.
  • Ведущий ноль, который превращает число в восьмеричное (основание 8).
  • Комментарии в комментариях.
  • Неоднозначность, являются ли две соседние строки частью одного и того же утверждения.
  • Заявления, которые ничего не делают.

Jslint Дугласа Крокфорда: http://www.jslint.com/

Но будьте осторожны, это повредит вашим чувствам;-)

Chrome: Ctrl + Shift + J: это вызовет консоль JavaScript. Вы можете щелкнуть вкладку сценариев, чтобы просмотреть сценарии страниц.

FireFox: установите firebug и запустите его, чтобы получить консоль, аналогичную вышеуказанным утилитам chrome.

IDE: вы можете использовать NetBeans или Eclipse, которые предлагают подсветку синтаксиса и завершение кода для JavaScript. Это будет указывать на синтаксические ошибки во время кода.

jslint/ jshint: эти инструменты предлагают предложения по коду, чтобы улучшить качество вашего кода и уменьшить вероятность ошибок (логика), но также будут нарушать синтаксис и другие ошибки.

Вы можете использовать Esprima JavaSript parser (ссылка представляет собой готовый к использованию онлайн-редактор кода).

Я считаю, что в настоящее время это лучший готовый к использованию анализатор js в js, поэтому я использую его в своем проекте LIVEditor (редактор кода для html/css/js с предварительным просмотром в реальном времени).

Попробуй JSlint

Это отличная утилита для отладки Javascript. Если вы используете библиотеку jQuery, есть плагин, который разрабатывается и был выпущен совсем недавно, так же называемый jQuery Lint.

Одной из идей было бы использовать консоль Firebug для интерактивного эксперимента с вашими сценариями, а затем перемещать в ваш код только проверенные части.

Я считаю JSHint, + его плагин vim очень полезными. Легкий вес vim и возможность отслеживать ошибки синтаксиса JavaScript.

https://github.com/walm/jshint.vim

Если вы используете Textmate (Mac), вы можете установить этот пакет

В основном это jslint, который проверит ваш синтаксис JS.
И он содержит некоторые другие вкусности, такие как различные инструменты сжатия

Eclipse IDE (с плагином JSEclipse) идентифицирует почти все наши проблемы с синтаксисом.

Я предлагаю один из лучших редакторов - IntelliJ, но он не бесплатный.

Javascript запускается браузером. Я не уверен, что есть, так сказать, "компиляторы".

Одна вещь, которую вы можете попробовать - это Firefox с установленным аддоном Firebug. Вы можете легко обновить страницу, получить список ошибок, включая номера строк и т. Д. Простой способ отладки.

Кроме того, если вы хотите, использование Visual Studio 2008 (или бесплатной версии для веб-разработчиков) предоставляет вам Javascript intellisense, включая поддержку jQuery. Это поможет вам сохранить ваш код в чистоте на ходу.

Другие вопросы по тегам