【发布时间】:2017-04-18 06:31:11
【问题描述】:
在 Clojure 和 Scheme 这样的语言中,我真的很喜欢在 REPL 驱动模式下编写代码,当你在编辑器中编写一段代码时(在我的例子中是 Emacs),将它发送到你的 REPL,使用它然后返回编辑器,修复发现的问题并再次将代码发送到 REPL。
我尝试对Node.js 做同样的事情,如果我将自己限制为仅使用ES5 语法,它就会起作用。但是,如果我使用 const、let 和 class 等 ES6 功能,我可能会在重新评估我的声明时遇到错误:
> let foo = 1;
> let foo = 2;
TypeError: Identifier 'foo' has already been declared
是否有任何Node.js REPL 参数,或者可能修补了REPLs,甚至是一些神奇的Emacs 模式,当我重新评估我的代码时,它们会清除现有的声明?这样我就能够以这种方式编写Node.js 代码,而无需不断考虑我正在使用哪种语法和/或每次重新评估时都需要手动重新启动REPL。
【问题讨论】:
标签: javascript node.js emacs ecmascript-6 read-eval-print-loop