使用命令检查JavaScript的语法

Rya*_*yan 11 javascript node.js

是否相当于perl -c命令的JavaScript语法检查?鉴于我安装了NodeJS?

不考虑JSLint,因为它不是真正的解析器.我认为YUI压缩器是可能的,但我不想在生产机器上安装Java,所以我正在检查Node.JS是否已经提供了这种语法检查机制.

Aad*_*hah 8

试试uglify.你可以通过npm安装它.

编辑:包名称已更改.这是uglify-js.


小智 5

@瑞安

如果您想像我们在 perl(另一种脚本语言)中那样执行语法检查,您可以简单地使用。节点 -c

例如,作为 test.js 的 js 文件具有 -

let x = 30
if ( x == 30 ) {
  console.log("hello");
else {
  console.log( "world");
}
Run Code Online (Sandbox Code Playgroud)

现在输入node -c test.js 它会告诉你

test.js:5
 else {
 ^^^^
SyntaxError: Unexpected token else
    at startup (bootstrap_node.js:144:11)
    at bootstrap_node.js:509:3
Run Code Online (Sandbox Code Playgroud)

现在在将语法问题修复为

let x = 30
if ( x == 30 ) {
  console.log("hello");
} else {
  console.log( "world");
}
Run Code Online (Sandbox Code Playgroud)

检查语法 -node -c test.js不会显示语法错误!!

注意- 我们甚至可以使用它来检查目录中所有文件的语法。——node -c *.js

希望有帮助。