Jakieś narzędzie do automatycznego naprawiania prostych problemów z Jslintem? [zamknięte]

Po raz pierwszy uruchomiłem JSLint na dość długim pliku i mam wiele błędów, takich jak expected exactly 1 space between "function" and "(" lub unexpected ' '. Nie zdawałem sobie sprawy, że to w ogóle ważne, gdzie dowiedziałem się o javascript, a teraz naprawienie każdej z tych raczej prostych rzeczy ręcznie wydaje się frustrujące. Niektóre mogę rozgryźć za pomocą prostego wyszukiwania i zastępowania, ale zastanawiałem się, czy są jakieś narzędzia online, które automatycznie wprowadzą te zmiany, ponieważ wydają się być dość proste?

(mam /*jslint white: false */ w mój plik, rozwijam w Netbeans i auto-formatuję (poza tym, że muszę poprawić wiszące łańcuchy jQuery, ponieważ nie robi tego dobrze), a mój kod wciąż kończy się ogromną liczbą rzeczy, na które jslint narzeka, jeśli chodzi o nieoczekiwaną liczbę spacji.)

Author: MrIsaacs, 2011-09-27

8 answers

Podczas gdy sprawdza inne rzeczy niż JSLint, tryb fixjsstyle lintera Google closure może robić to, co chcesz.

Automatycznie naprawia kod, aby (ściślej) pasował do Google Javascript Style guide , który jest wart przeczytania.

Jak zauważyli inni, JavaScript beautifier jest sposobem na problemy z odstępami.

 17
Author: Timothy Jones,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-25 12:18:39

Istnieje moduł npm o nazwie fixmyjs .

W "legacy mode" z JSHint:

var jshint = require('jshint').JSHINT
    var fixmyjs = require('fixmyjs')
    jshint(stringOfCode, objectOfOptions)
    var stringFixedCode = fixmyjs(jshint.data(), stringOfCode, objectOfOptions).run()
Działa świetnie!

Istnieje również Pakiet Sublime Text 2/3 .

 11
Author: timelf123,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-26 14:38:16

Http://jsbeautifier.org / powinien rozwiązać wszystkie Twoje problemy

 5
Author: albert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-27 04:26:14

Jsfmt formatuje javascript i pozwala AST przeszukiwać i przepisywać. Analogicznie do gofmt.

W niektórych ide takich jak netbeans możesz automatycznie sformatować kod za pomocą alt+shift+f.

Istnieją również online. http://jsbeautifier.org/

 4
Author: Ilia Choly,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-05-14 13:18:45

Po prostu użyj IDE, które obsługuje niestandardowe formatowanie kodu. Jak NetBeans, WebStorm czy Visual Studio.

 3
Author: c69,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-27 14:40:31

Jest mnóstwo narzędzi do robienia takich rzeczy. Używam js Beautifier który przynajmniej naprawi błędy wcięć, a także spacje-wokół-funkcji-część (przetestowałem to, yay!)

 2
Author: goto-bus-stop,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-27 04:26:48

Jeśli używasz / masz Visual Studio to również formatuje JavaScript. Może być konieczne skonfigurowanie opcji formatowania z wartości domyślnych.

 2
Author: Alexei Levenkov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-27 04:54:27

Damon, ładniejszy prawdopodobnie zrobi wszystko, co chcesz wrt bezbolesne formatowanie kodu javascript. Przekonwertuje Twój kod na AST, a następnie ładnie wydrukuje go z powrotem do pliku, dzięki czemu automatycznie formatuje podczas pracy. Możesz nawet dodać go jako hak wstępny lub uruchomić go w folderze pełnym plików (również dość szybko!) tak, że cały kod będzie od razu ładny.

Oto film z ReactConf, który wyjaśnia to całkiem dobrze

 0
Author: Damon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-27 13:45:44