从node 0.4.11升级到0.6.15后,发现在REPL(不带参数运行node)中,大多数命令或回车后都会持续输出"undefined"...
这很烦人,让我感到很苦恼,如何禁用这个功能?
>
undefined
>
undefined
>
undefined
>
undefined
> var x = 2
undefined
> x
2
>
从node 0.4.11升级到0.6.15后,发现在REPL(不带参数运行node)中,大多数命令或回车后都会持续输出"undefined"...
这很烦人,让我感到很苦恼,如何禁用这个功能?
>
undefined
>
undefined
>
undefined
>
undefined
> var x = 2
undefined
> x
2
>
另一种调用节点而不返回未定义命令的方法是:
node -e "require('repl').start({ignoreUndefined: true})"
从命令行执行
请参考 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)"
node -e "require('repl').start(null, null, null, null, true)"
命令行。也许可以给它取个别名? - user1207456# node -i -e "repl.repl.ignoreUndefined=true"
我的新_node别名(v6.11.2)。
我认为这比其他方法更有优势,因为它影响当前/默认的repl上下文...这就是我所有的node命令历史记录所在的地方!
在与此答案相似的线路上
你可以在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
>