Node带有用于REPL实现的内置模块。 REPL代表Read-Evaluate-Print-Loop。 当我们想快速测试JavaScript代码片段时,它非常方便。 Node REPL可作为独立程序使用,也可在其他应用程序中使用。 在本文中,我们将介绍Node REPL的一些功能,这些功能在日常开发中可能非常有用。
启动REPL
安装节点后,我们可以通过在命令提示符或shell中键入node
来启动Node REPL。 进入REPL后,我们可以执行任何JavaScript代码,它将读取该代码,评估表达式并打印输出,如下所示。
自动完成-标签和标签标签
Node REPL支持使用Tab键进行自动完成。 在任何时候,我们都可以按Tab键来自动完成部分键入的命令或表达式。 如果有多个以部分键入的文本开头的命令/表达式,则第二次按tab(tab后跟tab)将显示带有键入前缀的可能命令列表。
例如,键入“ s”并按tab键将显示以“ s”开头的所有可能的有效表达式。
尝试先按Tab再按Tab,而不输入任何内容,默认情况下,我们可以看到Node导出的所有模块。
我们还可以通过按模块/对象名称后跟一个“。”来查看特定模块/对象中可用的api /功能/属性的列表。 然后按两次Tab键。 例如,要查看Array的功能/属性列表,请键入Array。 然后按两次Tab键。 我们看到Array公开的成员列表。
尝试按全局。 和标签。 这将列出所有节点脚本可用的所有模块和对象,而无需在文件中显式导入/要求它们。
下划线
下划线(_)是node中的一个特殊变量,用于存储最后一个表达式求值的结果。 它可以用来访问上一次命令执行的结果-与$?类似。 猛扑
特殊点命令
Node REPL支持以点“。”开头的特殊命令。 输入。 然后按双标签以查看点命令列表。 或者,键入.help以查看所有点命令及其说明。
。加载
加载命令可用于将JavaScript文件加载到当前的REPL会话中。 加载文件后,文件中定义的所有函数,变量将在当前REPL会话中可用。 例如,如果我们有一个名为math.js的文件
然后,我们可以使用.load在当前的REPL会话中加载它,如下所示。
.break和.clear
Break&Clear命令可用于终止和退出多行会话。 有时,在将粘贴代码段复制到REPL时,我们会陷入困境。 在这种情况下,我们可以键入.break来终止多行会话,然后返回REPL提示符。
清除只是break命令的别名。
。编辑
编辑器命令将使我们进入编辑器模式。 编辑器模式是创建JavaScript文件并将其加载到当前会话中的一种便捷选择。 与默认的多行模式相比,它使我们可以方便地编写多行代码。
按^ D完成多行编辑,按^ C取消编辑。
。救
保存命令会将整个会话历史记录保存到文件中。 在长时间的REPL会话之后,这可能会很有用。
。出口
最后,.exit命令将终止REPL会话。 默认情况下,要退出当前会话,我们需要按两次^ C。 通过键入.exit将直接退出会话。
发布脚本
Node REPL是开发过程中非常方便且功能强大的工具。 我们仅列出了一些功能。 它还允许我们通过需要“ repl”模块并调用repl.start()来创建自定义REPL会话。 有关功能和可能的自定义的完整列表,请参阅Node REPL文档 。
From: https://hackernoon.com/know-node-repl-better-dbd15bca0af6