【问题标题】:How can I debug stand alone JavaScript files in Visual Studio Community 2015?如何在 Visual Studio Community 2015 中调试独立的 JavaScript 文件?
【发布时间】:2016-08-02 09:42:22
【问题描述】:

我正在练习 JavaScript,并且有一些不必在网页中运行的独立 JavaScript 源代码。

我在 Visual Studio Community 2015 中打开了一个新建 -> 文件,并将我的 JavaScript 代码粘贴到那里并将其保存到我的磁盘上的一个文件中。

我在我想要的地方设置断点。

现在,我看到顶部的 Attach 按钮看起来像 Run 按钮,但我不知道要将此代码附加到什么过程。如何在调试模式下运行这段 JavaScript 代码?

这个问题与使用 Visual Studio 作为 JavaScript 独立源的编辑和调试环境有关。

【问题讨论】:

  • 您如何托管 JavaScript? Visual Studio 也需要附加一个进程,通常是 w3wp.exe。但这需要一个 IIS 实例等。如果您想(仅)调试 Javascript,为什么不在所有现代浏览器中使用本机调试工具呢?无论如何,它们通常都比 Visual Studio 好得多
  • 这是一个由 Windows shell 执行的独立脚本。我可以在命令行上运行它,但这样我就没有调试功能。我尝试使用 Scratchpad (stackoverflow.com/q/38716746/303685),但我无法在其中设置断点,除非我在代码中手动编写 debugger 语句。我查看了一个线程,它说 Visual Studio 支持在调试器中运行独立的 JavaScript,而无需附加到任何进程。我正在拼命寻找一种无忧无虑的 JavaScript 调试体验。好像没有。
  • 您不能“独立”运行 JavaScript。它不是本机 Windows 语言。 JavaScript 始终由第三方引擎运行,即浏览器、Node.js 等。您不能在“windows shell”中运行 JavaScript。你说的windows shell是什么意思? Cmd,Powershell?你所要求的毫无意义。
  • 我知道。这就是我现在最终要做的事情。我已经做过很多次了。我只是想知道是否可以在 Visual Studio 中运行独立的 JavaScript 文件。看来我做不到。

标签: javascript visual-studio visual-studio-2015


【解决方案1】:

您当然可以使用 Visual Studio 做到这一点。你有两个选择:

  1. 使用 EXE 项目系统通过 cscript.exe 启动和调试 JavaScript 文件(充分利用 IDE,但需要一些设置

  2. 使用即时调试器将 Visual Studio 附加到 cscript.exe,并在必要时启动 Visual Studio。 (无需设置即可调试,但并不真正使用 IDE

选项 1:使用 EXE 项目系统

您可以从 EXE 创建一个项目,以便您可以使用 F5、F10 或 F11 启动 EXE。从 文件 菜单中,选择 Open Project 并选择 %windir%\System32\cscript.exe 并在 UAC 提示符上单击 Ignore。您现在应该有一个名为 cscript 的项目。

现在您可以创建或打开一个 .js 文件来编辑和设置断点。要调试您的 .js 文件,请设置项目属性。

右键单击项目并选择属性以打开项目属性页面。

填写以下参数:

  • 参数: //D 文件
  • 调试器类型:脚本
  • 工作目录:包含 .js 文件的文件夹的路径

其余参数的默认值应该够用了。此时,您已准备好按 F5 并调试您的 .js 文件。

选项 2:使用 JIT 调试器

您可以在命令提示符下使用以下命令运行 .js 文件:

cscript //X <your .js file>

这应该会自动打开即时调试对话框,您可以从中选择要启动和附加的 Visual Studio 安装/实例(如下所示)。

【讨论】:

  • 非常感谢。你怎么知道这些巫毒教的东西?
  • 我是 Visual Studio Debugger 团队的一名工程师,总是乐于提供帮助 :)
猜你喜欢
  • 2014-04-14
  • 1970-01-01
  • 1970-01-01
  • 2015-11-09
  • 2017-04-12
  • 1970-01-01
  • 2016-02-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多