2008-12-01 103 views
44

有誰知道一個好的,可擴展的源代碼分析器,用於檢查JavaScript文件嗎?JavaScript源代碼分析器

+0

就分析而言,您在尋找什麼? – 2008-12-01 16:34:14

+0

非常多,典型的錯誤和兼容性問題分析,但也有能力檢查命名約定和風格。 – JamesEggers 2008-12-01 16:36:28

+0

你能提供一個不同語言的示例代碼分析器嗎? – 2008-12-01 16:39:38

回答

61

在保持這個問題上的最新的興趣,有JSLint的的一個分支叫JSHint爲什麼JSHint創建的解釋可以發現here,但總結:

JSHint是JSLint的的叉子,工具 由Douglas編寫和維護 Crockford。JSLint爲我服務以及 相當一段時間,但在過去的幾個 個月,它已經不舒服 對自己的 代碼充滿自信和敵意。它正在迅速從 轉變爲一種工具,可以幫助開發人員將 防止錯誤的工具,以確保 你寫你的代碼像道格拉斯 Crockford。

1

我發現JSLint有助於糾正很多常見的錯誤,然而,我希望找到一些我可以添加自己的規則的東西,以幫助自動化我的公司想要實現到JavaScript中的一些編碼標準。

http://www.jslint.com/

我需要考慮它的可擴展性模型更多。

1

在wikipedia上的list of tools for static code analysis上有一些工具支持JavaScript,如果有任何提到的工具可以幫助您,您也可以參閱JavaScript Debugging。在YUI(Yahoo! Developer Network)中還有一些很好的工具,以及許多有用的組件。

我總是使用JSLint自己,這是我嘗試過的JS的唯一分析工具。我越來越喜歡JavaScript,但好的工具仍然是一個問題。 :(

1

我用的Aptana對JavaScript文件的分析,它抓住了很多穿幫鏡頭的(如果用單=條件),同時還介紹了類佈局。我相信它有嵌入了JSLint的實現。

2

JSAnalyse剛剛發佈在codeplex上。它是一個分析JavaScript文件之間依賴關係的工具。你甚至可以定義允許的依賴關係,並且檢查定義的規則是否被滿足。這使得即使在大型項目中也可以跟蹤javascript依賴關係,並且擁有乾淨的架構。

JSAnalyse可作爲命令行工具執行或通過Visual Studio Layer Diagramm配置。集成到構建中也很容易。通過門控簽入,您可以控制依賴關係。

4

我嘗試了ESlint,發現它很好地使用的幾個例子工具。你也可以在那裏添加自定義規則..這裏是github回購:https://github.com/nzakas/eslint

2

除了JSLint,JSHint,ESLint,Plato,Google Closure-Linter還有另一個名爲Esprima的工具。 這裏是鏈接吧:http://esprima.org/

此外,這是GitHub的鏈接工具Esprima:https://github.com/ariya/esprima

我遇到的安裝問題,而試圖從谷歌關閉棉短絨爲Windows。但是,它在網頁上提到它對Windows的支持是實驗性的。所有其他工具都易於使用。