如何在 Visual Studio 2008 或 Visual Studio 2010 中设置 JavaScript 断点

Posted

技术标签:

【中文标题】如何在 Visual Studio 2008 或 Visual Studio 2010 中设置 JavaScript 断点【英文标题】:How to set JavaScript breakpoints in Visual Studio 2008 or Visual Studio 2010 【发布时间】:2011-01-16 03:12:43 【问题描述】:

我正在尝试使用 Visual Studio 2010 调试 javascript 代码,但我无法设置断点。

我该怎么做?

我刚刚注意到一些事情,每次我尝试调用一个函数时,无论是什么函数,在 JavaScript 中,jQuery 和微软的 Ajax 框架 JavaScript 都会捕获它并检查文档是否准备好(document.onready 或其他)并且永远不会将控制权返回给我正在调用的函数!它到底为什么要这样做?我从来没有要求过!

我所拥有的只是对这些库的引用、脚本/链接引用,就像您在母版页顶部所做的那样。

这很荒谬,我该如何解决?

【问题讨论】:

timstall.dotnetdevelopersjournal.com/… 尝试使用脚本文件底部的 notifyScriptLoaded 调用 msdn.microsoft.com/en-us/library/bb310952.aspx 【参考方案1】:

如果您的脚本位于单独的脚本文件 (.js) 中,则只需使用 F9 在一行上设置断点。

如果脚本包含在另一个文件(如 aspx 文件)中,则无法设置断点。对于这样的情况,请使用debugger; javascript 语句强制在某个位置中断。

同时确保您使用的是最新版本的 javascript 文件,如有必要,请在 IE 中执行 Ctrl-F5 以强制重新加载文件。

【讨论】:

【参考方案2】:

在要停止执行和调试的行之前使用debugger; 语句。

示例

var test = "testString";
debugger; // stops execution and can start debugging
test += "newly added";

【讨论】:

【参考方案3】:

如果您要附加到进程,您可以在出现的对话框中指定要附加到脚本。但那将只是脚本而不是托管代码。

只需在 Firefox 中使用 Firebug。

【讨论】:

以上是关于如何在 Visual Studio 2008 或 Visual Studio 2010 中设置 JavaScript 断点的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Visual Studio 2008 中抑制特定的 CSS 2.0 验证错误?

Visual Studio 2008 / C#:如何在项目中查找死代码?

如何将 C++ Visual Studio 2008 项目降级到 2005

Visual Studio 2008 的 Prefast

Visual Studio 2008 Windows 窗体设计器如何兼容 QVGA 和 VGA?

如何在 Visual Studio 2010 中使用 Visual Studio 2008 创建的 DLL?