JavaScript的源代码分析器
有谁知道一个好的,可扩展的源代码分析器,检查JavaScript文件?
为了保持这个问题是最新的,有一个名为JSHint的JSLint分支。 为什么要创buildJSHint的解释可以在这里find,但总结一下:
JSHint是JSLint的一个分支,由Douglas Crockford编写和维护。 JSLint为我服务了很长时间,但在过去的几个月里,它已经不自在地对你的代码产生了自信和敌意。 它正在迅速从帮助开发人员防止错误的工具转变为确保您编写代码的工具,如Douglas Crockford。
JSLint历来是这方面的主要工具,但现在还有几个:
- JSHint – JSLint的一个分支,据说是less一些自以为是的
- Closure Linter – 一款针对Google Javascript Style Guide的小工具
- ESLint – 一个更灵活的工具,但更新,但还不够稳定。
如果你还没有find它,你应该看看谷歌closures编译器。 编译你的JavaScript并在代码中发现错误。 http://code.google.com/closure/compiler/docs/gettingstarted_api.html
我尝试了ESlint,发现它好…你也可以在那里添加自定义规则..这里是github回购: https : //github.com/nzakas/eslint
JSAnalyse刚刚发布在codeplex上。 它是一个分析JavaScript文件之间的依赖关系的工具。 您甚至可以定义允许的依赖关系,并且JSAnalysis
检查定义的规则是否被满足。 即使在大型项目中也可以跟踪javascript
依赖关系,并且拥有一个干净的架构。
JSAnalyse
可以作为命令行工具执行,也可以通过Visual Studio Layer Diagramm
configuration。 这也很容易融入build设。 通过门控签入,您可以控制依赖关系。
在http://esprima.org/上有一个parsing器叫ECMAScriptparsing基础结构,用于多用途分析(esprima),有几个示例工具可用于某些分析;
用于多用途分析的ECMAScriptparsing基础结构
除了JSLint,JSHint,ESLint,Plato,Google Closure-Linter还有另一个名为Esprima的工具。 这里是它的链接: http : //esprima.org/
另外,这是工具Esprima的github链接: https : //github.com/ariya/esprima
我在尝试使用Google Closure-Linter for Windows时面临安装问题。 但是,它在网页上提到它对Windows的支持是实验性的。 所有其他工具都很容易使用。
我发现JSLint有助于纠正很多常见的错误, 不过,我希望find一些可以添加自己的规则的东西,以帮助自动化一些我公司想要实现到JavaScript中的编码标准。
我需要更多地研究它的可扩展性模型。
在维基百科的静态代码分析工具列表中有一些工具可以支持JavaScript,如果提到的任何工具都可以帮助您,您也可以参阅JavaScriptdebugging 。 在YUI (Yahoo! Developer Network)中也有一些好的工具,还有很多有用的组件。
我总是使用JSLint自己,这是我尝试过的唯一的JS分析工具。 我越来越喜欢JavaScript,但好的工具仍然是一个问题。 🙁
我使用Aptana进行JavaScript文件分析。 它捕获了很多goofs(如果条件与一个=)。 它也描述了课堂布局。 我相信它里面embedded了一个jslint实现。