Доступен ли JSLint для автономного использования? - PullRequest
23 голосов
/ 07 мая 2009

Я хотел бы использовать JSLint , но я опасаюсь инструментов, которые имеют доступ к моему нефильтрованному исходному коду. Есть ли автономная версия или есть другой аналогичный инструмент, который выполняет «lint проверку ошибок» для JavaScript в автономном режиме?

Редактировать: Один с графическим интерфейсом, который показывает вам стилизованный список ошибок вместо интерфейса командной строки?

Ответы [ 17 ]

17 голосов
/ 07 мая 2009

Если вам нравится веб-интерфейс JSLint , вы можете сделать File> Save Page As... и Save as type: Web Page, complete (в Firefox это может немного отличаться) в локальная папка.

Я изменяю имя на jslint.htm, чтобы получить его под 8.3 без пробелов.

Кажется, что работает при локальном сохранении.

Три вещи:

  1. Это может нарушить его лицензию, хотя я оставляю Авторское право без изменений и не изменяю его код, и технически мой веб-браузер уже создал копию его сайта на моем локальном HD, поэтому я не уверен, Я нахожусь в нарушении или нет, и я не юрист, поэтому я буду продолжать это делать, пока не получу письмо с указанием прекратить.
  2. Возможно, на странице все еще есть возможность отправить ваш код в Интернет, хотя вероятность такой возможности очень мала. Тем не менее, версии WSH или Rhino могут, вероятно, отправить код, который вы отправляете в Интернет, проще, чем версия на локально сохраненной веб-странице (если вы параноик).
  3. Вы будете отставать в исправлении любых ошибок или обновлений, которые делает Дуглас. Но то же самое относится и к версиям WSH или Rhino, если вы не обновляете их регулярно.
13 голосов
/ 07 мая 2009

JSLint можно запустить в автономном режиме с помощью WSH или Rhino:

http://www.jslint.com/lint.html#try

Редактировать : За два года, с тех пор как этот вопрос был задан, JSLint прекратил поддержку Rhino и WSH. Я призываю всех, кто заинтересован в написании кода, также проверить JSHint . Это форк JSLint, который стремится быть более гибким, чем оригинал, но также поддерживает Node, Rhino и WSH (в дополнение к браузерам, конечно).

11 голосов
/ 07 мая 2009

Да

Для запуска jslint.js.

вам просто необходим встроенный компилятор JavaScript.
5 голосов
/ 07 мая 2009

Есть еще один JS Linter, называемый JavaScript Lint , который имеет как онлайн, так и загружаемые версии командной строки. Я использую загружаемую версию все время. Я думал об интеграции его в SVN как часть ловушки. Мне нравится это лучше, чем JSLint, потому что он имеет больше опций и, кажется, обнаруживает больше вещей. Он может быть настроен для обработки определенных идентификаторов как предопределенных для наборов инструментов и т. П., Что позволяет ему проверять использование неопределенных переменных, что, я уверен, JSLint не может сделать.

4 голосов
/ 08 мая 2009

Если вы работаете в среде Java, мой инструмент jslint4java может оказаться полезным. Он поставляется в варианте командной строки, а также может быть интегрирован в скрипт Ant. Нет графического интерфейса, потому что я плохо сосу. : -)

3 голосов
/ 07 мая 2009

YSlow for Firebug имеет эту встроенную функцию

2 голосов
/ 08 мая 2009

У меня есть инструмент для запуска JSLint из командной строки с оболочкой SpiderMonkey или Rhino . Он также включает в себя плагин для Vim , который позволяет нажимать кнопку для автоматического выделения любых проблемных строк при редактировании файла:

http://github.com/hallettj/jslint.vim/

2 голосов
/ 06 октября 2010

Если вы используете TextMate, я создал пакет, который запускает JSLint и отображает вывод в графическом окне. Это все автономно; для его использования не нужно устанавливать ничего другого:

Просмотр JSLint.tmbundle на GitHub

1 голос
/ 10 июня 2009

Кори Беннет имеет хороший пост в командной строке JSLint . Большая часть вашей настройки будет работать SpiderMonkey . Не так плохо, если вы работаете в Linux; немного сложнее, если вы используете Windows и Cygwin . И вот некоторые дополнительные обсуждения и сравнение с Rhino run-time .

ОБНОВЛЕНИЕ: 2013.11 - если вы используете node.js в командной строке (а почему бы и нет?), Вы можете запустить как jslint , так и новый eslint . [NB: я добавил отчеты об ошибках и тест-код в eshint.] Оба из них способ проще в настройке, чем у меня выше ....

1 голос
/ 20 марта 2012

Попробуйте Google Closure Linter . Он также имеет больше возможностей, чем JSLint.

...