# 三.REPL
前言
在 Node.js 中为了使开发者方便测试 JavaScript 代码,提供了一个名为 REPL 的可交互式运行环境。开发者可以在该运行环境中输入任何 JavaScript 表达式,当用户按下回车键后,REPL 运行环境将显示该表达式的运行结果。
在命令行容器中输入 node 命令并按下回车键,即可进入 REPL 运行环境
# 1.基本操作
- 变量的操作,声明普通变量和对象
- eval
- 函数的书写
- 下划线访问最近使用的表达式
- 多行书写
- REPL 运行环境中的上下文对象
let repl = require("repl")
let con = repl.start().context
con.msg = "hello"
con.hello = function() {
console.log(con.msg)
}
1
2
3
4
5
6
2
3
4
5
6
# 2.基础命令
- break 退出当前命令
- clear 清除 REPL 运行环境上下文对象中保存的所有变量与函数
- exit 退出 REPL 运行环境
- save 把输入的所有表达式保存到一个文件中
- load 把所有的表达式加载到 REPL 运行环境中
- help 查看帮助命令
# 3.vscode 调试
launch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch",
"program": "${workspaceRoot}/abstract-server/index.js",
"runtimeExecutable": "nodemon", // 用什么命令执行app.js
"restart": true, //在终止node.js后重启会话
"console": "integratedTerminal", //启动调试目标的位置,这里选择在vscode的集成终端输出信息
"skipFiles": [
"${workspaceRoot}/node_modules/**/*.js",
"<node_internals>/**/*.js"
]
},
{
"type": "node",
"request": "attach",
"name": "Attach",
"port": 3000
}
]
}
// ${workspaceRoot}:VSCode中打开文件夹的路径
// ${workspaceRootFolderName}:VSCode中打开文件夹的路径, 但不包含"/"
// ${file}:当前打开的文件
// ${fileBasename}: 当前打开文件的文件名, 不含扩展名
// ${fileDirname}: 当前打开文件的目录名
// ${fileExtname} 当前打开文件的扩展名
// ${cwd}:当前执行目录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31