• Node.js Video Tutorials

Node.js - REPL 终端



Node.js 运行时内置了一个交互式 shell,您可以在其中一次执行一条指令。Node.js 交互式 shell 基于 REPL 原理,REPL 是读取 (READ)、评估 (EVALUATE)、打印 (PRINT) 和循环 (LOOP) 的首字母缩写。

Node.js 交互式 REPL 终端类似于 PowerShell 或命令提示符终端,或者 Linux 中的 bash 终端。它执行以下任务:

读取 - 读取用户输入,将输入解析为 JavaScript 数据结构,并存储在内存中。

评估 - 获取并评估数据结构。

打印 - 打印结果。

循环 - 终端准备接收用户的下一个输入。

为了简化您的学习,我们在线设置了一个易于使用的 Node.js REPL 环境,您可以在其中练习 Node.js 语法 - 要启动 Node.js REPL 终端,请访问 Node.Js 终端

要在您的计算机上启动 Node.js REPL,只需在命令终端中输入 node(与之前执行 JavaScript 文件时不同,这里不需要文件名)。Node.js 提示符 > 将出现。

D:\nodejs>node
Welcome to Node.js v20.9.0.
Type ".help" for more information.
>

Node 的 REPL 功能在实验 Node.js 代码和调试 JavaScript 代码方面非常有用。

您可以通过在 > 提示符前输入来测试任何 Node.js/JavaScript 表达式。例如:

> 10+20
30
> "Hello"+"World"
'HelloWorld'
> a=10
10
> b=20
20
> a+b
30
> Math.random()
0.5423940959293392
>

您可以看到指令被读取、评估,结果显示,并且终端已准备好接收下一条指令。要启动 REPL,请按两次 ctrl+c,或 ctrl+D,或在 > 符号前输入 .exit。

多行表达式

Node REPL 支持类似于 JavaScript 的多行表达式。让我们检查以下 do-while 循环的实际操作:

> x=0
0
> do {
... x++;
... console.log("x: "+x);
... }
... while (x<5);
x: 1
x: 2
x: 3
x: 4
x: 5
undefined
>

当您在起始括号后按 Enter 键时,三个点 ... 会自动出现。Node 会自动检查表达式的连续性。

下划线变量

您可以使用下划线 (_) 获取最后一个结果:

> var x=10
undefined
> var y=20
undefined
> x+y
30
> var z= _
undefined
> z
30
>

点命令

REPL 有一些特殊的命令,都以点 .. 开头。它们是

序号 点命令 & 描述
1

.help

显示点命令帮助

2

.editor

启用编辑器模式,以便轻松编写多行 JavaScript 代码。进入此模式后,输入 ctrl-D 运行您编写的代码。

3

.break

在输入多行表达式时,输入 .break 命令将中止进一步输入。与按 ctrl-C 相同。

4

.clear

将 REPL 上下文重置为空对象,并清除当前正在输入的任何多行表达式。

5

.load

加载 JavaScript 文件,相对于当前工作目录

6

.save

将您在 REPL 会话中输入的所有内容保存到文件(指定文件名)

7

.exit

退出 repl(与按两次 ctrl-C 相同)

8

向上/向下键

查看命令历史记录并修改以前的命令。

9

Tab 键

当前命令列表。

广告