[node]Node.js 中REPL简单介绍

nodeNode.js 中REPL简单介绍

  • 什么是REPL
  • 为什么使用REPL
  • 如何使用
    • REPL 命令
    • REPL模式
    • node的全局内容
      • 展示node全局所有模块
      • 查看全局模块具体内容
      • 其它命令
  • 实践

什么是REPL

Node.js REPL(Read Eval Print Loop:交互式解释器) 表示电脑的环境,类似 Windows 系统的终端或 Unix/Linux shell,我们可以在终端中输入命令,并接收系统的响应。

Node 自带了交互式解释器,可以执行以下任务:

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

执行 - 执行输入的数据结构

打印 - 输出结果

循环 - 循环操作以上步骤直到用户两次按下 ctrl-c 按钮退出。

Node 的交互式解释器可以很好的调试 Javascript 代码。

为什么使用REPL

可以不用搭建其它任何框架,直接在终端输入表达式等,快速验证各种代码,并能得到实时反馈

但是它的缺点也是显而一见,无法对之前的代码进行修改,操作起来没有在文件中方便

如何使用

可以在cmd终端直接执行node,之后终端转换为node的执行终端,可以开始REPL--输入代码并查看

REPL 命令

  • ctrl + c - 退出当前终端,停止当前循环事件
  • ctrl + c 按下两次 - 退出 Node REPL
  • ctrl + d - 退出 Node REPL.
  • ctrl + L - 清空node终端、
  • 向上/向下 键 - 查看输入的历史命令
  • tab 键 - 列出当前命令
  • .help - 列出使用命令
  • .break - 退出多行表达式
  • .clear - 退出多行表达式
  • .save filename - 保存当前的 Node REPL 会话到指定文件
  • .load filename - 载入当前 Node REPL 会话的文件内容。

REPL模式

REPL:read eval print loop,node自带的交互解释器

可以通过在cmd终端执行输入以下命令,进入REPL模式:

shell 复制代码
node

进入REPL模式后,可以直接在终端进行运行运算,输入代码并查看

node的全局内容

展示node全局所有模块

empty + double Tab(直接double Tab)

查看全局模块具体内容

类型.+双击Tab 查看可用方法 :Array.+ double Tab

其它命令

  • .editor 用于编辑多行 ctrl+d 中止编辑
  • .help 查看所有node的命令
  • .save filename将终端中的内容保存到文件中
  • more filename 读取文件中的内容
  • .load filename 再次加载文件filename

实践

个人感觉对repl的应用主要是简单的测试,否则复杂测试直接在终端输入比较麻烦,若测试不同参数下次还需要再次重新输入,不如写在文件中,通过命令执行文件查看运行结果方便

相关推荐
定栓1 小时前
Webpack迁到Vite第四节:SVG 图标系统
前端·webpack·node.js
小天源14 小时前
智叟云集系统架构解析:从品牌 AI 可见度监测到前后端协同
人工智能·react.js·系统架构·node.js·react·ai监测·ai品牌监测
用户6122716650241 天前
电费 9 毛/天:我让一台 9 年前的旧 MacBook 替我上班,它比入门云服务器还能打
node.js
PegasusYu1 天前
Node.js使用nedb轻量级数据库测试脚本
数据库·electron·node.js·脚本·测试·轻量级·nedb
WebInfra1 天前
Rsdoctor 2.0 发布:Agent 驱动的全自动优化工具
前端·javascript·node.js
DevUp2 天前
标着 JavaScript 的 Wiki 与知识库:既不是 CMS 也不是 SSG(番外三)
javascript·node.js·cms
毕业设计7032 天前
(免费领源码)基于node的学生公寓管理系统06412- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·mysql·node.js·maven·mybatis·express·b/s
damoluomu2 天前
SSG 的后台怎么补:Node.js 生态里的三条路(番外二)
javascript·css·typescript·node.js·html
花开富贵城2 天前
使用fnm安装node.js包管理器
node.js
濮水大叔2 天前
NestJS Dynamic Providers 与 Cabloy/Vona Provider Scene:同接口多实现的两种装配哲学
typescript·node.js·nestjs