是否有一个调试系统可以让我记录发生的 javascript 函数调用及其参数?这将允许我在实时/客户端情况下跟踪和调试应用程序,而不会因手动记录而降低性能。
编辑:我不是在谈论使用“控制台”窗口手动调用函数并查看结果,或者在我的javascript中手动添加“跟踪”或“日志”命令。我需要它与任何正在运行的 javascript 一起工作。
是否有一个调试系统可以让我记录发生的 javascript 函数调用及其参数?这将允许我在实时/客户端情况下跟踪和调试应用程序,而不会因手动记录而降低性能。
编辑:我不是在谈论使用“控制台”窗口手动调用函数并查看结果,或者在我的javascript中手动添加“跟踪”或“日志”命令。我需要它与任何正在运行的 javascript 一起工作。
你能覆盖 Function.prototype.call 并检索 arguments 和 arguments.callee 吗?
这将具有报告所有函数的效果,因此非常冗长,但也许您想要过滤。
然后你有你想如何报告的问题,也许是 if (console) console.log
你可以看看http://ajax.dynatrace.com/ajax/en/ - 它只有 IE 但相当不错,请参阅 j 的这篇文章。Resig:http : //ejohn.org/blog/deep-tracing-of-internet-explorer/ > “..dynaTrace 提供了一些我以前从未见过的信息——在任何浏览器上的任何工具中。”
@Jenko,如果您正在寻找类似于 IDE 调试器的东西,在这种情况下,Internet Explorer 8 和 9 有一个内置的开发工具(按 F12),Chrome 也有开发工具。IE 和 Chrome 都允许您在代码中设置断点并在代码运行时单步执行。Firefox 有 Firebug,其他人已经提到过,它也允许设置断点和检查代码的执行。Opera 具有 Dragonfly(内置)并且具有与其他浏览器相同的功能。
当我阅读答案并嘲笑“您可以使用 Firebug!”的重复答案时 我意识到......你可以使用 Firebug。
说真的,它有一个“配置文件”命令,可以完全满足您的要求。Safari 和 Chrome 具有此功能,因此您也可以在那里签到。IE8/9 有一个类似的“分析器”工具(但我不知道它是否可以使用 console.profile() 从 JavaScript 调用)
这将为您提供准确的时间,因为您添加的任何代码和日志记录也会影响实际性能。而且由于此功能位于顶级浏览器中,因此您可以获得合理数量的数据。
我发现了 fireflow:https ://addons.mozilla.org/en-us/firefox/addon/fireflow/ 非常有用。
如果您谈论的是浏览器端的 javascript dedub,您可以使用 Firebug,它是一个出色的工具。
在这里您可以找到分步教程:
是的。所有主流浏览器都内置了调试器(IE、Chrome、Safari),或作为附加组件提供(Firefox 的 Firebug)。
Firebug 对此有好处。或者您也可以使用 Google Chrome 的内置调试器。
for Firefox Firebug for IE deeloper tool for chrome 内置调试器很好用
可以说最好的在线 Javascript 代码质量控制是 JSLint。它不仅检查代码是否有错误,它还完全改进了程序的编码风格<<这是作者首先制作它的原因。我的 0,02 $