是否可以使用浏览器内调试器

Is it possible to have an in-browser debugger?

本文关键字:调试器 浏览器 可以使 是否      更新时间:2023-09-26

目前是否可以在浏览器窗口中用程序调试Javascript?我希望能够从浏览器内的窗口面板中断/检查Javascript。

编辑:

我应该更具体一点:我正在寻找一个在页面上下文中使用的api,即浏览器中的JS代码可以添加它自己的断点。

它已经内置在Chrome和Safari中,在一定程度上也内置在Firefox中。存在多个插件。查看Firefox的Firebug和IE的F12开发工具

利用浏览器的开发工具:使用特定于浏览器的开发人员工具,可以识别运行时错误、设置断点和运行性能诊断。为了使调试更加容易,在开发部署期间不要缩小JavaScript。

在IE中:IE开发者工具

或者安装Google Chrome Frame,它允许IE使用Google Chrome的V8引擎处理JavaScript,并允许用户使用Chrome Developer Tools 进行调试

在FF中:Firebug扩展

在Chrome中:Chrome开发工具

使用静态代码检查器(如JSLint)来验证JavaScript代码是否符合公认的编码规则。

使用JsFiddle轻松测试和改进JavaScript/jQuery函数(http://jsfiddle.net/)这有一个用于解析JavaScript 的JSLint选项

如果您使用的是Firefox,请尝试FireBug。

如果你使用的是Chrome,它有一个内置的调试器。

对于IE,有一种叫做DebugBar和F12开发工具的东西。

只需选择firebug。

http://getfirebug.com

你也可以有断点

http://getfirebug.com/doc/breakpoints/demo.html

在Google Chrome中->右键单击->检查元素

Firefox 的Firebug

F12在几乎任何现代浏览器中都可以使用。

是的,有可能做到这一点。

例如,对于Chrome,您可以使用chrome.debug扩展,将您自己的调试器实现附加到在另一个选项卡/窗口中运行的网站。一旦连接,就可以通过基于JSON的远程调试协议来控制调试器。我想说的最大问题是,您必须通过HTML元素来传输所有通信。这种情况是因为扩展只能与内容脚本通信,而内容脚本只能访问DOM指定的属性。

John Bartons chrome扩展crx2app试图简化对扩展API的访问。我不知道它实际支持多少,但它可能也有助于开发从浏览器本身运行的调试器。

据我所知,Firefox还提供了对其内部JavaScript引擎Spidermonkey的访问,并扩展到其调试机制。但这实际上可能与FireBug插件冲突,因为您通常只能将一个侦听器附加到调试器。但随着最近发布的新的Firefox内置JavaScript调试器提供远程访问,这可能不再是一个问题。