我遇到过 JSHint,但希望它能验证 node.js 语法,但它不会,例如,如果我这样做:
var server = http.createServerfunctionThatDoesNotExists(function(request, response) {....
即使没有名为 createServerfunctionThatDoesNotExists 的函数,测试也会通过
JSHint 和 node.js 选项缺少什么?
我遇到过 JSHint,但希望它能验证 node.js 语法,但它不会,例如,如果我这样做:
var server = http.createServerfunctionThatDoesNotExists(function(request, response) {....
即使没有名为 createServerfunctionThatDoesNotExists 的函数,测试也会通过
JSHint 和 node.js 选项缺少什么?
我认为它没有深入研究 CommonJS 模块,因为它们几乎可以包含所有内容。
因此,即使您正在使用它,它也可能是您自己require
的http
具有任何接口的模块。
“假设节点”意味着它可以容忍全局变量,例如module
或exports
JSHint 基本上是 JSLint,更多的是用于语法/样式/JS-nonos,而不是执行 JS 的深度扫描产品。完全审查 JS 代码(或任何动态语言,真的,取决于你对动态的定义)几乎需要运行它,因为方法之类的东西可以或多或少地在任何地方定义,包括在运行时。
JSHint确实更进一步,允许定义一些JS 库使用的高级构造。