环境真正可用的标准是能运行 node 命令且 vscode f5 可断点调试;首要验证 node -v 和 npm -v 在系统终端输出版本号,路径不含中文/空格,环境变量生效后需重启 vscode,再通过 hello.js 验证执行与调试。

能跑 node 命令,且在 VSCode 里按 F5 能断点调试,才算环境真正可用;其余插件、格式化、package.json 初始化,全是后续动作,不是启动门槛。
node -v 报错?先别碰 VSCode
这是最常卡住的环节,90% 的“VSCode 跑不起来”本质是系统没认出 node。必须在系统终端(Windows 是 CMD/PowerShell,macOS/Linux 是 Terminal)里执行:
-
node -v和npm -v都得输出版本号,缺一不可 - Windows 安装时漏勾
Add to PATH,或装在C:我的软件 odejs这类含中文/空格路径,npm可能静默失败 - macOS/Linux 用
nvm的,确认source ~/.nvm/nvm.sh已写入~/.zshrc或~/.bash_profile,且新开终端已加载 - 改完环境变量后,必须彻底退出 VSCode 再重开,内置终端不会自动刷新 PATH
直接运行 hello.js,别急着 npm init
验证 JS 运行时是否通,不需要项目结构、不需要 package.json。三步搞定:
- VSCode 新建文件 → 输入
console.log("Hello World");→ 保存为hello.js(扩展名不能丢) - 用快捷键
Ctrl + `(反引号)唤出 VSCode 内置终端 - 确保终端当前路径是
hello.js所在目录(可用cd切换),再执行node hello.js
看到输出即说明 node 可执行、路径正确、文件编码无 BOM —— 此时才值得继续往下走。
调试要设断点,不是点“运行”
VSCode 自带 Node.js 调试支持,无需装 Node.js Extension Pack 或 Debugger for Node.js,装了反而可能冲突。
- 打开
hello.js,在console.log行号左侧单击设断点(红点出现) -
Ctrl + Shift + P→ 输入Debug: Open Configuration→ 选Node.js → Current File - VSCode 自动生成
.vscode/launch.json,关键字段是"program": "${file}" - 按
F5启动,程序会在断点暂停;若提示Cannot find runtime 'node',一定是前面node -v没过,不是配置问题
runtimeExecutable 不写,多版本环境下必踩坑
如果你用 nvm 或手动装了多个 Node 版本,VSCode 默认按 PATH 顺序找 node,但终端里 which node 输出的路径,和调试器实际调用的可能不一样。
- 在项目根目录的
.vscode/launch.json中,给配置加一行:"runtimeExecutable": "/usr/local/bin/node"(macOS/Linux)或"runtimeExecutable": "C:\Program Files\nodejs\node.exe"(Windows) - 在代码里加一句
console.log(process.execPath),对比终端输出和调试器输出是否一致 - 不显式指定时,
node -v和调试器用的node版本可能不同,导致import报错、fs.promises不可用等隐蔽问题
真正麻烦的从来不是“怎么写第一行代码”,而是 node 命令在哪、被谁调用、用的是哪个版本——这些细节不钉死,后面所有调试、模块加载、ESM 切换都会飘。











