GX博客

分享个人 Full-Stack JavaScript 项目开发经验

Node.js交互式解释器REPL简介

Node.js 中的 REPL(read-eval-print loop) 模块是对“读取-求值-输出”循环的实现。本文以整理方式帮助快速了解或回顾 REPL 的使用。它可以快速编辑和测试我们的 node 程序或打印对象接口等。


启动及编辑控制

直接输入 node 即可启动 REPL:

node

下面是编辑时候的键盘控制说明:

键盘输入说明
Ctrl + C终止当前命令。按两次会强制退出 REPL。
Ctrl + D退出 REPL
Tab全部或本地变量的自动补全。
上/下方向键翻阅历史命令。
下划线(_)引用上一个输出结果的值。

另外,可使用 {} 或 () 来支持多行表达式。


REPL命令

下面是 REPL 实例都支持的命令:

命令说明
.break放弃已经输入的多行内容。
.clear重置上下文并清空所有多行表达式。
.editor进入编辑模式。
.exit退出 REPL。
.help显示帮助列表。
.load <file_path>读取文件到当前 REPL 会话。
.save <file_path>保存当前 REPL 会话内容到文件中。

自定义REPL

下面分享一个简单的自定义 REPL 例子,在文件 repl.js 中:

const repl = require('repl');

const context = repl.start({
  prompt: 'repl >', // 自定义输入提示符
  ignoreUndefined: true, // 忽略 undefined 的输出结果
  replMode: repl.REPL_MODE_STRICT // 运行时使用严格模式
}).context;

// 在上下文中预加载 lodash,非 Node.js 核心模块需要另行安装。
context.lodash = require('lodash');

启动自定义 REPL:

node repl.js

当然,我们可以将自定义的 REPL 集成到我们的 CLI 工具中。


了解更新更多的 REPL 介绍,请参阅官方文档
文章关键字:node.jsrepl

版权声明:

本文为博主原创文章,若需转载,须注明出处,添加原文链接。

https://leeguangxing.cn/blog_post_71.html