如何使用Node.js REPL
Node.Js REPL或Read-Evaluate-Print Loop是Node.js环境的交互式shell,意味着我们可以在其中编写任何有效的Javascript代码。这用于更轻松和可访问地测试、评估、实验或调试代码。它基本上充当了浏览器的Web开发工具的Javascript控制台。
要使用REPL,您必须为您的操作系统下载Node.js。要检查Node.Js是否正确安装,您可以使用以下命令:
如果你得到一个版本号,你就可以开始了,否则,你需要修复你的安装。现在我们可以在你的机器上开始使用node.js的REPL。
如何开始REPL: 启动Node.js REPL非常简单和直接,只需要在终端/CMD/PowerShell中输入node这个单词,根据你的操作系统。
您可以在提示符中使用任何有效的Javascript代码。我们不需要使用console.log来打印变量的值,通常只需使用变量的名称即可。
如我们所见,提示输出比纯文本多一些,它有很好的着色效果,甚至还具有内置的自动补全功能。这使得 REPL 更便捷和快速,在实际使用之前可以测试一些想法。
退出 REPL: 要退出 REPL,您可以在 Windows/Linux 上按下 CTRL + D,而在 macOS 上按下 CMD+D。另外,按两次 CTRL+C 也可以退出。或者我们也可以使用以下方法退出 REPL:
在REPL中使用Javascript: 我们可以在REPL中使用任何有效的javascript。我们可以使用变量、字符串、拼接、算术运算以及所有在REPL中可行的操作。在REPL中我们可以写一些较长、有功能的程序也有一些限制。下一节将介绍REPL命令中的这个问题。
正如我们所看到的,我们在Javascript中使用了一些概念,如字符串插值,四则运算和数组操作。在REPL中可以使用任何有效的和可行的Javascript代码,因此可以利用一些Javascript的核心功能。
命令: 有一些命令和参数可以在Node.Js REPL中使用。我们将在本节中探索其中一些。这些命令应该在REPL中使用,即在终端/CMD/PowerShell中输入node命令之后。这些命令或字符在REPL中是保留的,因此提供了一些很好的功能和增强了可访问性。
编辑器命令: 该命令用于停止逐行评估,并在shell中以类似编辑器的方式输入。它并不像编辑器一样,只是以更长和有意义的代码形式编写程序。
我们可以看到,在Shell中我们可以写多行代码,这使得我们在终端中编写更复杂的代码有了很大的自由度。在编写完所需的代码后,按下CTRL + D可以保存和评估代码,按下CTRL + C可以取消评估并中止进程。
保存命令: 我们可以使用.save命令将当前REPL会话中的代码保存到文件中。如果你退出REPL,所有的代码片段都将丢失,而使用这个命令可以更容易地在用户方便的时候备份代码。
正如我们在REPL中看到的代码片段被保存到一个文件中。在大多数情况下,这个文件很明显是一个Js文件。.save命令与文件名一起使用,以存储REPL的内容。
load命令: 与.save命令相对应,load命令将文件中的变量、函数和其他作用域加载到REPL中。这对于加载现有代码文件以进行实验而不需要重新编写整个代码非常有用。
帮助命令: REPL标题中所述的帮助命令提供有关Node.Js REPL中可用选项和命令的更多信息。
下划线变量: 下划线变量(_
)将提供我们上次执行的命令或代码的结果。它可以是变量值,函数返回值或任何可以返回某种值的东西,如果在评估中没有任何内容,则REPL将将其默认为undefined。
在这个示例中,_
变量获取了shell中最后执行命令的结果。如果只是声明了一个变量,它可能是未定义的,否则它存储了执行命令的结果或返回值。
使用模块: 我们甚至可以在Node.Js REPL中使用Js模块。默认情况下,Node.Js REPL中有一些模块。你可以通过按两次TAB键来获取列表。
如果您想导入其他模块,您需要按照以下步骤进行:
您首先需要通过Node.Js的npm包管理器安装软件包。
在同一目录中安装模块后,我们可以使用“ require ”命令来获取模块的核心功能。
如我们所见,这个命令:
这里,express可以是其他模块。在为REPL中的包写入样板代码后,我们甚至可以使用模块中的功能。我们甚至可以将一个模板作为文件加载到REPL中使用。这使得测试一些常用模块变得非常简单和快速。