您可以使用以下语法在 JavaScript 代码上运行 JSLint:
var code = "var a = 1 + 2;";
JSLINT(code);
您可以打印问题中提到的语法树。
现在,在您的情况下,您需要从 JavaScript 文件中读取 JavaScript 源代码。您可以进行 AJAX 调用以将 JavaScript 文件的源代码读入变量。然后像上面那样调用 JSLINT 并传递该变量。使用 jQuery 的示例如下所示。
$(function() {
// Include jslint.js
$('<script src="http://localhost/yourapp/jslint.js">').appendTo("head");
// Read JavaScript file contents into 'code'
$.get('http://localhost/yourapp/somescript.js', function(code) {
// Run JSLINT over code
JSLINT(code);
// Print the parse tree
console.log(JSON.stringify(JSLINT.tree, [
'string', 'arity', 'name', 'first',
'second', 'third', 'block', 'else'
], 4));
});
});
根据您要实现的目标,独立的 JavaScript 控制台(例如 NodeJS)将是比浏览器控制台更好的选择。我猜 JSLint 存在 Node 包。但是,如果您想手动包含它,您可以简单地按照以下方式进行。
首先在 jslint.js 的末尾添加以下行
exports.JSLINT = JSLINT;
然后在 mycode.js 中编写您的代码。
var fs = require("fs");
var jslint = require("./jslint.js");
fs.readFile("./test.js", function(err, code) {
var source = code.toString('ascii');
jslint.JSLINT(source);
console.log(JSON.stringify(jslint.JSLINT.tree, [
'string', 'arity', 'name', 'first',
'second', 'third', 'block', 'else'
], 4));
},"text");
然后从控制台运行您的代码:
node mycode.js