node.js REPL“undefined”

时间:2012-04-17 06:56:24

标签: node.js

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

这会分散注意力并让我感到沮丧,你怎么禁用它?

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

4 个答案:

答案 0 :(得分:9)

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

特别是:

  

如果ignoreUndefined设置为true,则如果命令为undefined,则repl不会输出命令的返回值。默认为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)"

答案 1 :(得分:8)

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

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

从命令行

答案 2 :(得分:1)

this answer

的相似行上

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

示例代码:

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
>

答案 3 :(得分:0)

# node -i -e "repl.repl.ignoreUndefined=true"

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

我在这里看到的优势在于它会影响当前/默认的repl上下文..这是我所有节点命令历史记录的所在!