能直接在VSCode内置终端运行node -v和npm -v并显示版本号才算Node环境配置成功;否则是系统PATH未正确继承,需检查shell配置(macOS/Linux)或环境变量(Windows),并彻底重启VSCode验证。

能直接在 VSCode 内置终端里敲 node -v 并看到版本号,才算真正就位;其余所有“运行失败”,90% 是因为终端压根找不到 node 命令——不是 VSCode 问题,是环境没继承过来。
终端里 node 报 command not found 怎么办
这不是插件缺失或设置错误,而是 VSCode 启动时没加载你 shell 的 PATH。系统终端里 node -v 成功,但 VSCode 终端里失败,说明它用的 shell 没读到你的环境配置。
- macOS/Linux:确认
~/.zshrc(或~/.bash_profile)里有export PATH="/usr/local/bin:$PATH"(Homebrew 安装)或 nvm 初始化代码;改完必须彻底退出 VSCode(Dock 右键「退出」),再双击图标重开 - Windows:安装 Node.js 时漏勾了 “Add to PATH”;打开「系统属性 → 环境变量」,把
C:\Program Files\nodejs\加进「系统变量」里的Path,然后任务管理器确认Code.exe已结束,再重启 - 验证方式只有一种:在 VSCode 内置终端(
Ctrl+`)里执行node -v和npm -v,两者都有输出才算过关
node script.js 运行报错模块找不到或语法错误
常见现象是 Cannot find module 'xxx' 或 Cannot use import statement outside a module——这些和 VSCode 无关,是 Node.js 自身对当前文件的解析规则导致的。
- 工作目录不对:
node script.js总是按终端当前路径找文件,不是按编辑器里打开的标签位置;右键脚本文件 → 「在集成终端中运行」,VSCode 会自动cd到该文件所在目录再执行 - ESM 语法报错:Node 默认按 CommonJS 解析
.js文件;解决方法二选一:package.json中加"type": "module",或把文件改成script.mjs后缀再运行node script.mjs - 别用
node index.js去跑本该由npm start启动的服务——缺少node_modules、环境变量、启动脚本逻辑,大概率失败
为什么不用 Code Runner 插件更稳
它默认命令是 node $fileName,不处理编码、不支持 stdin、不识别 ESM、也不校验工作目录。尤其在中文路径、含 process.stdin 的脚本、或 import 语法下,容易假死或乱码。
- Windows 下中文乱码:插件不传
-r utf-8,终端输出变问号;手动运行node -r utf-8 script.js就能解决 - 交互式脚本(如 readline)必卡死:Code Runner 不提供 stdin 接入通道,这类脚本只能在终端里手动运行
- 路径写错却没提示:它会静默尝试
node ./subdir/script.js,但当前目录其实是项目根,结果报Cannot find module却不知原因
最易被忽略的一点:VSCode 终端只是个壳,它不自带 node,也不改写 Node.js 行为。哪怕你配了十种 launch.json、装了五个调试插件,只要 which node 在系统终端里都返回空,所有运行和调试都是空转。


















