1

控制台输出
(来源:nocookie.net

我正在尝试访问我在 nodejs 程序中以红色突出显示的文本。我目前在 require 调用周围有一个 try/catch 块,但我在 catch 中转储的堆栈跟踪不包含我试图访问的信息(即发生错误的“testdebug.js”中的行号)。

以红色突出显示的行显然是由节点内部的某些东西打印的。如何将该字符串存储在我的程序中?代码如下。

var syntaxError = true;
try {
    debugModule = require('./testdebug.js')
    syntaxError = false;
}
catch(e) {
    console.log(e.stack);
    //there was a syntax error.
}
4

1 回答 1

0

这家伙知道怎么回事。他的模块使用 esprima 检查代码中的解析器错误,并提供一个有用的对象来剖析它们。

https://github.com/substack/node-syntax-error

于 2012-12-06T16:29:01.537 回答