2011-10-07 39 views
0

我所遇到JSHint但希望它會驗證node.js的語法,但如果我這樣做不對,例如:JSHint是一個Node.js語法驗證器嗎?

var server = http.createServerfunctionThatDoesNotExists(function(request, response) {.... 

測試通過,即使沒有一個叫createServerfunctionThatDoesNotExists

功能

我錯過了什麼JSHint和node.js選項?

+1

JSHint驗證JavaScript不是API。 node.js選項只是在你引用全局或者需要通常是引用的錯誤時不會抱怨 – Raynos

回答

1

我認爲它沒有挖掘到CommonJS模塊,因爲它們幾乎可以包含所有的東西。

所以即使你是require'http它可能是你自己的模塊與任何接口。

「假設節點」是指它容忍全局變量像moduleexports

1

JSHint基本上是JSLint的,是更多的語法/風格/ JS-nonos而不是執行你的JS深掃描產品。完全審查JS代碼(或者任何動態語言,實際上取決於你對動態的定義)幾乎需要運行它,因爲像方法之類的東西可以在任何地方定義,包括在運行時。

JSHint 確實走一點,並允許一些 JS庫使用的高層次結構的定義。