多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

HoRain云--Node.js REPL(交互式解释器)

HoRain云--Node.js REPL(交互式解释器) Node.js 提供了一个内置的 REPLRead-Eval-Print Loop这是一个交互式编程环境可以在终端中运行 JavaScript 代码。REPL 的名称来源于它的主要操作读取Read、执行Eval、打印Print和循环Loop。Node 自带了交互式解释器可以执行以下任务读取Read- 读取用户输入解析输入的 Javascript 数据结构并存储在内存中。执行Eval- 执行输入的数据结构打印Print- 输出结果循环Loop- 循环操作以上步骤直到用户两次按下ctrl-c按钮退出。REPL 可以直接输入并立即执行 JavaScript 代码快速验证代码片段。REPL 适合测试简单逻辑和调试以及尝试新语法或 Node.js API。开始学习 REPL我们可以输入以下命令来启动 Node 的终端node执行后出现如下内容# node Welcome to Node.js v20.1.0. Type .help for more information. 这时我们就可以在 后输入简单的表达式并按下回车键来计算结果。简单的表达式运算接下来让我们在 Node.js REPL 的命令行窗口中执行简单的数学运算$ node 1 4 5 5 / 2 2.5 3 * 6 18 4 - 1 3 1 ( 2 * 3 ) - 4 3 使用变量你可以将数据存储在变量中并在你需要的时候使用它。变量声明需要使用var关键字如果没有使用 var 关键字变量会直接打印出来。使用var关键字的变量可以使用 console.log() 来输出变量。$ node x 10 10 var y 10 undefined x y 20 console.log(Hello World) Hello World undefined console.log(www.runoob.com) www.runoob.com undefined多行表达式Node REPL 支持输入多行表达式这就有点类似 JavaScript。接下来让我们来执行一个 do-while 循环$ node var x 0 undefined do { ... x; ... console.log(x: x); ... } while ( x 5 ); x: 1 x: 2 x: 3 x: 4 x: 5 undefined ...三个点的符号是系统自动生成的你回车换行后即可。Node 会自动检测是否为连续的表达式。下划线(_)变量你可以使用下划线(_)获取上一个表达式的运算结果$ node var x 10 undefined var y 20 undefined x y 30 var sum _ undefined console.log(sum) 30 undefined REPL 命令Node.js REPL 的常用命令和快捷键汇总表命令/快捷键说明.help显示 REPL 中可用的所有命令及其说明。.exit退出 REPL 会话相当于按Ctrl D。.save filename将当前的 REPL 会话保存到指定文件中。.load filename从指定文件中加载并执行代码到 REPL。.break退出多行表达式输入模式返回到单行输入模式。.clear重置 REPL 的上下文相当于清除所有变量和状态。Ctrl C强制退出当前输入或终止命令。如果按两次则退出 REPL 会话。Ctrl D结束 REPL 会话相当于.exit。Ctrl L清除屏幕类似于在终端中输入clear。方向键↑/↓浏览输入历史记录查看并重新执行之前输入的命令。Tab自动补全输入显示可能的选项或补全命令。_用于访问上一次表达式的结果。Ctrl R进入反向搜索历史搜索先前输入的命令。Ctrl U删除当前行从光标到行首的所有内容。Ctrl K删除当前行从光标到行尾的所有内容。Ctrl A移动光标到行首。Ctrl E移动光标到行尾。Ctrl B向后移动光标一个字符。Ctrl F向前移动光标一个字符。Ctrl N显示下一条历史记录与方向键 ↓ 相同。Ctrl P显示上一条历史记录与方向键 ↑ 相同。Ctrl Z挂起 REPL 会话将其置于后台在某些系统中可用。停止 REPL前面我们已经提到按下两次ctrl c键就能退出 REPL:$ node (^C again to quit) REPL 进阶功能自动补全输入一部分代码并按TabREPL 会尝试补全或显示可能的选项。结果缓存REPL 会自动将上次运行的结果保存到特殊变量_中。例如 5 5 10 _ * 2 20Gif 实例演示接下来我们通过 Gif 图为大家演示实例操作
返回列表