18

从节点 0.4.11 升级到 0.6.15,并注意到 REPL(不带参数的运行节点)在大多数命令或回车返回后不断转储“未定义”......

这让我分心,让我发疯,你如何禁用它?

> 
undefined
> 
undefined
> 
undefined
> 
undefined
> var x = 2
undefined
> x
2
>
4

4 回答 4

16

另一种在没有未定义的命令返回的情况下调用节点的方法是:

node -e "require('repl').start({ignoreUndefined: true})"

从命令行

于 2013-10-25T17:10:49.270 回答
12

请参阅 Node.js REPL文档页面。

具体来说:

如果ignoreUndefined设置为true,那么repl不会输出command的返回值,如果它是undefined。默认为false.

示例代码:

var net = require("net"),
    repl = require("repl");

repl.start(null, null, null, null, true);

样本输出:

> var x
> var blah

此外,您可以别名node

node -e "require('repl').start(null, null, null, null, true)"
于 2012-04-17T08:54:56.523 回答
7
# node -i -e "repl.repl.ignoreUndefined=true"

我的新_node别名(v6.11.2)。

我在这里看到的与其他人相比的优势是它会影响当前/默认的 repl 上下文 ..这是我所有节点命令历史记录的地方!

于 2017-09-22T13:55:32.583 回答
2

这个答案的类似行

您可以repl.repl.ignoreUndefined=true在 REPL 会话中运行它。

示例代码:

Welcome to Node.js v12.13.1.
Type ".help" for more information.
> var x
undefined
> repl.repl.ignoreUndefined=true
true
> var y = 10
> _
true
> console.log(y)
10
>
于 2020-09-27T10:28:28.820 回答