如何在VSCode中运行和调试JavaScript代码?【教程】

发布时间 - 2026-01-21 00:00:00    点击率:
VSCode不直接执行JavaScript,需依赖Node.js或浏览器环境;调试必须配置launch.json,否则无法运行。Node.js须已安装并加入PATH,Code Runner适合快速运行脚本,Debugger for Chrome/Edge用于前端调试,Node.js调试器需正确设置program和cwd路径。

VSCode 本身不直接执行 JavaScript,必须依赖 Node.js 运行时或浏览器环境;调试需正确配置 launch.json,否则点“运行”毫无反应。

确认 Node.js 已安装并可用

VSCode 不自带 JS 执行能力,node 命令必须能在终端中调用成功:

  • 在 VSCode 内置终端(Ctrl+`)输入 node -v,应输出版本号(如 v20.11.0
  • 若提示 command not found: node,说明 Node.js 未安装或未加入系统 PATH
  • Windows 用户装完 Node.js 后建议重启 VSCode,否则 PATH 可能未刷新

用 Code Runner 快速运行单个 JS 文件

适合写小脚本、验证逻辑,无需配置文件:

  • 安装扩展 Code Runner(作者:Jun Han)
  • 右键编辑器中的 .js 文件 → 选择 Run Code,或按 Ctrl+Alt+N
  • 输出默认显示在 OUTPUT 面板的 Code Runner 标签页,不是终端 —— 若代码含 prompt() 或需要交互,它不支持
  • 如需在终端中运行(例如要输入 readline),可在设置中搜索 code-runner.runInTerminal,设为 true

用 Debugger for Chrome / Edge 调试浏览器端 JS

适用于 HTML 中内联或引入的脚本,断点、变量监视、调用栈都可用:

  • 安装官方扩展 Debugger for ChromeDebugger for E

    dge
  • 确保目标浏览器已启动且允许远程调试(Edge 默认开启;Chrome 需手动加启动参数或使用扩展)
  • 项目根目录下建 .vscode/launch.json,内容类似:
{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "pwa-chrome",
      "request": "launch",
      "name": "Launch index.html",
      "file": "${workspaceFolder}/index.html"
    }
  ]
}

然后按 F5 启动 —— 浏览器会新开窗口并加载页面,VSCode 自动关联调试会话。

用 Node.js 调试器调试服务端或 CLI 脚本

这是最常被配错的一环,关键在于入口路径和工作目录:

  • 必须有 .vscode/launch.json,不能只靠右键“调试”
  • program 字段必须是绝对路径或相对于 cwd 的有效路径,例如:"program": "${workspaceFolder}/src/app.js"
  • 若脚本依赖 process.cwd() 读取文件,务必设好 cwd,否则 fs.readFile('./config.json') 会失败
  • 启动后终端显示 Debugger attached 才算真正进入调试模式;如果卡在 Starting target...,大概率是路径错或 Node.js 版本太旧(低于 v14 不支持某些调试协议)

真正容易卡住的地方,往往不是“怎么点运行”,而是 launch.jsonprogram 指向了不存在的文件,或者 cwd 和你预期的不一样 —— 建议第一次调试前,在代码开头加一行 console.log(__dirname, process.cwd()); 确认上下文。


# javascript  # java  # vscode  # html  # js  # 前端  # node.js  # json  # node  # windows 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 奇安信“盘古石”团队突破 iOS 26.1 提权  JavaScript如何实现倒计时_时间函数如何精确控制  JS中对数组元素进行增删改移的方法总结  Laravel如何实现本地化和多语言支持?(i18n教程)  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  如何用AI帮你把自己的生活经历写成一个有趣的故事?  Laravel如何使用Vite进行前端资源打包?(配置示例)  Swift中swift中的switch 语句  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  Laravel如何配置和使用缓存?(Redis代码示例)  黑客入侵网站服务器的常见手法有哪些?  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  jQuery 常见小例汇总  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  C#如何调用原生C++ COM对象详解  如何快速生成专业多端适配建站电话?  Laravel如何使用Blade模板引擎?(完整语法和示例)  微信小程序 wx.uploadFile无法上传解决办法  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  西安专业网站制作公司有哪些,陕西省建行官方网站?  Linux后台任务运行方法_nohup与&使用技巧【技巧】  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  如何基于PHP生成高效IDC网络公司建站源码?  如何在香港免费服务器上快速搭建网站?  EditPlus中的正则表达式 实战(4)  javascript如何操作浏览器历史记录_怎样实现无刷新导航  如何在建站主机中优化服务器配置?  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  如何用AWS免费套餐快速搭建高效网站?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  如何用花生壳三步快速搭建专属网站?  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  Windows Hello人脸识别突然无法使用  如何利用DOS批处理实现定时关机操作详解  ,网页ppt怎么弄成自己的ppt?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  Laravel如何使用Sanctum进行API认证?(SPA实战)  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  昵图网官网入口 昵图网素材平台官方入口  Laravel如何使用查询构建器?(Query Builder高级用法)  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  黑客如何利用漏洞与弱口令入侵网站服务器?