我正在尝试通过V8运行JSLint。
d8
正常工作,并将文件传递给它执行该文件。现在我想执行jslint.js
并传递文件名来解析它。我试过了
d8 jslint.js myfile.js
d8 jslint.js < myfile.js
d8 jslint.js -- myfile.js
毫无疑问,jslint.js结尾的麻烦行使用Rhino readline()
函数来获取命令行参数。有没有人修改过这个脚本才能在V8中工作,或者有一种通用的方法让V8传递参数吗?
更新:史蒂夫的回答提醒我,我确实找到了compile JSLint into an executable的方式,就像史蒂夫所做的那样,但我希望能为其他开发者提供更便携的东西。
答案 0 :(得分:3)
d8 shell允许您在命令行上传递参数,方法是在前面加上“ - ”。 即,在你的情况下:
d8 jslint.js -- myfile.js
' - '后的翻转将被读作逐字字符串,因此所有其他标志必须在此之前。 命令行参数将作为一个名为“arguments”的全局变量提供给脚本。
(而不是' - '你可以使用同义词'--js-arguments')。
答案 1 :(得分:2)
您可以查看我在http://blog.stevenreid.co.uk/2011/06/27/jslint-command-line-tool-powered-by-v8/使用v8运行JSLint的尝试。
命令行应用程序将JSLint直接编译为二进制文件。支持所有JSlint选项。可以打印多个源文件以及从stdin输入。