繁体   English   中英

Node.js应用程序如何编译或检查语法错误

[英]How to compile or check syntax error in Node.js application

我创建了一个 node.js 应用程序。 运行node.js服务前需要编译或检查语法错误,需要在jenkins中集成,请指导验证node.js应用

看看打字稿。 它是一种语言,允许您自动完成类型并在您遇到一些语法错误时无法编译。 它是 JavaScript 的超集,可转译为 JavaScript。

Node.js 提供了 CLI 选项--check-c来检查给定文件的语法错误,而无需运行它。 使用 Linux 或 MacOS 时,如下所示的命令有助于检查文件夹中所有明显的 javascript 文件是否包含基本工作代码:

find -name "*.js" | xargs node -c

您可以使用“节点语法错误”模块。 它可以帮助您检测和报告源代码字符串中的语法错误。

当你输入node src.js 时,你会得到一个友好的错误报告,关于语法错误的确切位置。 这个模块让你检查语法错误并以类似友好的格式报告它们,在 Function()vm.runInNewContext()周围包裹一个try/catch不会得到你。

例如:

var fs = require('fs');
var check = require('syntax-error');

var file = __dirname + '/src.js';
var src = fs.readFileSync(file);

var err = check(src, file);
if (err) {
    console.error('ERROR DETECTED' + Array(62).join('!'));
    console.error(err);
    console.error(Array(76).join('-'));
}

使用以下代码检查 node.js 应用程序中的语法错误 -

var check = require('syntax-error')

检查源代码字符串 src 是否存在语法错误。 您可以选择指定将显示在输出中的文件名文件。 如果 src 有语法错误,则返回一个可以打印或字符串化的错误对象 err。 如果 src 中没有语法错误,则返回 undefined。

var err = check(src, file)

使用

节点——检查

只发现非常严重的错误并且执行起来可能很棘手。

我建议使用像“eslint”这样的 linter。 因为:

  • 它很容易与(npm lint 或 yarn lint)集成
  • 它捕获几乎所有可能的错误(比节点检查更多)

使用eslint package https://www.npmjs.com/package/eslint这是一个非常常用的库,用于检查任何 JS/TS 框架的语法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM