我正在做一个使用javascript的特定样式指南的项目。例如,if/else语句将如下所示:
if( condition ){
// Bla bla
}
else {
// Another bla bla
}我正在寻找的是一种工具,它可以让我根据特定的样式指南检查文件的语法。JSHint/JSLint不关注样式,Closure Linter不可定制,Uncrustify会在没有警告的情况下重新格式化文件(并且官方不支持Javascript)。
用这个程序我能得到的最好的输出是Closure Linter的输出,但是有自定义的规则。this similar question的答案都是错的。
这样的工具存在吗?
发布于 2013-12-04 08:54:19
如果您仍在寻找答案,可以尝试一个名为jscs的项目。
您可以自定义代码在几乎所有方面的外观,以及那些您还不能开发的方面(例如,函数参数间距)。
所有内容都可以通过.jscsrc文件进行自定义;以下是我的一个项目使用它的示例:
{
"requireCurlyBraces": [ "if", "else", "for", "while", "do", "switch" ],
"requireSpaceAfterKeywords": [ "if", "else", "for", "while", "do", "switch" ],
"disallowSpaceAfterKeywords": [],
"requireSpacesInsideObjectBrackets": "all",
"disallowSpaceAfterObjectKeys": true,
"disallowImplicitTypeConversion": [],
"disallowKeywords": [ "with" ],
// ...
}如果您正在使用Grunt,请随意尝试我自己的jscs任务--即grunt-jscs-checker。
顺便说一下,the jQuery team is using jscs :)
发布于 2013-04-18 04:19:08
听起来你真的很想要一台JavaScript beautifier。检查可以通过版本控制支持的“在文件上运行它并查看它们是否发生变化”来完成。
发布于 2013-04-18 03:03:18
没有任何工具能满足你的需求。JSLint正在应用Crockford建议(和执行)的样式规则,JSHint更加灵活,因为您可以选择更适合您的编码样式的规则,但不够灵活,无法强制执行任何类型的样式。
通常,您可以对编辑器进行配置,以便它可以帮助您按照您希望代码的方式缩进和执行换行符。并使用linter注意重要的地方(一些空格规则,如何使用parens…)。林特人的角色更多的是防止愚蠢的错误,而你的语言并不能阻止你。
https://stackoverflow.com/questions/16031266
复制相似问题