我第一次在一个相当冗长的文件上运行JSLint,我有很多错误,比如expected exactly 1 space between "function" and "("
或unexpected ' '
。我没有意识到这对我学习javascript的任何地方都很重要,现在用手工修理这些相当简单的东西似乎很令人沮丧。有些我可以通过简单的查找和替换来解决,但我想知道是否有任何在线工具会自动为我做这些更改,因为它们看起来非常简单?
(我的文件中有/*jslint white: false */
,我在Netbeans开发并自动格式化(除非我必须更正挂起的jQuery链,因为它没有正确执行),而且我的代码对于意想不到的空格数量,jslint抱怨的内容仍然很多。)
答案 0 :(得分:17)
虽然它会检查与JSLint不同的内容,但Google closure linter的fixjsstyle
模式可能会执行您想要的操作。
它会自动修复代码(更接近)以适合Google Javascript style guide,这非常值得阅读。
正如其他人所指出的那样,Javascript beautifier是解决间隔问题的方法。
答案 1 :(得分:11)
有一个名为fixmyjs的npm模块。
使用JSHint的“遗留模式”:
var jshint = require('jshint').JSHINT
var fixmyjs = require('fixmyjs')
jshint(stringOfCode, objectOfOptions)
var stringFixedCode = fixmyjs(jshint.data(), stringOfCode, objectOfOptions).run()
效果很好!
答案 2 :(得分:6)
http://jsbeautifier.org/应解决您的所有问题
答案 3 :(得分:4)
jsfmt格式化javascript并允许AST搜索和重写。类似于gofmt。
在某些类似netbeans的ide中,您可以使用alt+shift+f
自动格式化代码。
也有在线版。 http://jsbeautifier.org/
答案 4 :(得分:3)
只需使用支持自定义代码格式的IDE即可。与NetBeans,WebStorm或Visual Studio一样。
答案 5 :(得分:2)
有很多工具可以做这样的事情。我使用JS Beautifier,它至少会修复缩进错误,还有函数空间部分(我已经测试了它,是的!)
答案 6 :(得分:2)
如果您使用/拥有Visual Studio,它也会对JavaScript进行格式化。您可能需要从默认值配置格式选项。
答案 7 :(得分:0)