VSCode不运行Node.js,执行依赖本地安装的node命令;需先在系统终端验证node --version和npm --version有输出,若报错则重装Node.js并勾选“Add to PATH”;VSCode内置终端默认复用系统PATH,配置变更后可能需重启。

VSCode 本身不运行 Node.js,它只是编辑器;真正执行靠的是你本地已安装的 node 命令。只要终端能跑 node --version,VSCode 就能调用它——关键不在 VSCode 设置,而在环境是否就绪。
确认 Node.js 已正确安装并可用
这是最常被跳过的一步,也是后续所有失败的根源。很多人以为装了 VSCode 就等于能写 Node.js,其实 VSCode 和 Node.js 完全无关。
- 打开系统终端(macOS/Linux 用 Terminal,Windows 用 PowerShell 或 CMD),输入
node --version和npm --version,必须有输出(如v20.11.1) - 如果报错
command not found或'node' is not recognized,说明 Node.js 没装,或没加进系统 PATH —— 此时重装 Node.js(推荐从 nodejs.org 下载 LTS 版),勾选 “Add to PATH” 选项 - VSCode 内置终端(
Ctrl+`)默认复用系统 shell 环境,但如果你改过 shell 配置(比如用了 zsh + nvm),可能需要重启 VSCode 才能加载新 PATH
在 VSCode 中新建并运行一个最简 Node.js 文件
不需要插件、不需要配置文件,纯手工创建也能立即运行。
- 新建文件夹,用 VSCode 打开(
File → Open Folder) - 右键 →
New File,命名为index.js - 写入以下内容:
console.log('Hello from Node.js in VSCode');
- 保存文件(
Ctrl+S),然后在 VSCode 内置终端中执行:node index.js - 看到输出即表示成功。别急着配调试器或任务,先确保这一步通了
用 VSCode 的 Run Code 扩展快速执行(可选但实用)
如果你习惯按快捷键一键运行,Run Code(by Jun Han)扩展比原生调试更轻量,适合脚本类开发。
本书是全面讲述PHP与MySQL的经典之作,书中不但全面介绍了两种技术的核心特性,还讲解了如何高效地结合这两种技术构建健壮的数据驱动的应用程序。本书涵盖了两种技术新版本中出现的最新特性,书中大量实际的示例和深入的分析均来自于作者在这方面多年的专业经验,可用于解决开发者在实际中所面临的各种挑战。 本书内容全面深入,适合各层次PHP和MySQL开发人员阅读,既是优秀的学习教程,也可用作参考手册。
- 在 VSCode 扩展市场搜
Code Runner,安装后重启(或重载窗口) - 打开
index.js,右上角会出现 ▶️ 按钮,或按Ctrl+Alt+N(Windows/Linux) /Cmd+Option+N(macOS) - 注意:它默认用
node运行.js文件,但不会自动读取package.json的scripts,也不支持断点调试 - 如果执行报错
Cannot find module,大概率是当前工作目录不对 —— 右键文件 →Run Code in Current Folder,或手动cd到项目根目录再运行
调试 Node.js 应用时常见陷阱
VSCode 调试功能强大,但默认配置容易踩坑,尤其对新手。
- 点击左侧调试图标(或
Ctrl+Shift+D),再点顶部的「运行和调试」→「创建 launch.json 文件」→ 选Node.js→ 选node.js (preview)(新版推荐) - 生成的
.vscode/launch.json默认配置里"program"指向"${file}",意味着它只调试当前打开的文件 —— 如果你的入口是src/index.js,但当前打开的是test.js,就会调试错文件 - 想固定调试入口,把
"program"改成:"${workspaceFolder}/index.js" - 调试时若卡在
Waiting for the debugger to disconnect...,通常是 Node.js 版本太高(v20+)与旧版调试协议不兼容,可尝试在launch.json中加一行:"runtimeExecutable": "node", "runtimeArgs": ["--inspect-brk"]
真正卡住人的往往不是“怎么配”,而是“为什么终端能跑,VSCode 终端却报 command not found”——问题几乎全出在 PATH 加载时机或 shell 初始化逻辑上。先让 node 在系统终端和 VSCode 终端里行为一致,剩下的都是水到渠成的事。









