我该如何跟踪我的JavaScript代码?

3
我正在接手一个新的ASP.Net MVC应用程序,其中有大量的javascript和jQuery代码(以及Kendo)。有些是内联的,有些是在.js文件中等等。
由于存在大量重复代码,因此尝试确定按下特定按钮时调用哪个函数非常令人沮丧。如果我在Firebug中尝试执行堆栈跟踪,几乎都是jQuery和Kendo函数,这使得几乎不可能弄清楚哪些是我的javascript函数被调用了。
我该如何轻松追踪按下此按钮时在我的代码中调用了哪些函数,并忽略所有Kendo/jQuery调用?

我所做的最好的事情是在每个javascript函数中放置一个独特的警告。希望其他人有更好的方法。 - Niro
你能否提供一些这些事件/按钮绑定的示例?理想情况下,有一个常见的对象或函数被使用,你可以从中原型开发。 - Michael Marr
在你的代码中设置断点。 - Barmar
4个回答

2

在代码的各个位置插入“debugger;”语句。打开Chrome JavaScript控制台 (ctrl-alt-j, command-alt-j),并像平常一样与页面进行交互。调试器语句将充当断点,您可以从那里跟踪代码。

例如,假设您有一个名为foo的点击处理程序:

function foo(event) {
   debugger; // breakpoint will happen here
   ...click handler logic
}

1

你可以在代码中加入console.log语句,这样可以跟踪代码运行情况。

如果没有捆绑JavaScript文件并从Visual Studio运行Internet Explorer,则可以使用VS调试器跟踪文件。


1
你可以尝试覆盖jQuery的click或bind函数,并显示绑定的函数。虽然不美观,但对于调试有帮助。

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接