是否存在动态更改浏览器中运行的javascript的工具?例如,要在运行时更改javascript变量的值。

有帮助吗?

解决方案

Firebug,或Venkman Javascript调试器。

其他提示

因此,Firebug确实是最好的选择之一 - 或者,如果您是拥有Visual Studio并希望使用IE进行调试的开发人员,那么您可以这样做。假设您将使用Firefox在Firebug中执行此操作。

首先,确定要更改代码的位置,然后将的行放在之前要开始搞乱的行:

debugger;

这将导致Firebug在此时停止执行脚本,此时您可以单步执行代码并更改变量的值。

您还可以通过单击Firebug脚本窗口中一行代码左侧来使用Firebug来放置断点:

查看javascript shell 此处。 它就像是浏览器中的调试器。 您可以在活动文档对象上运行/更改任何javascript函数。

在您无法访问源/服务器的站点上调试/处理其他人javascript非常精彩。

我提到它有制表完成吗?太棒了。

Opera 9现已与 Dragonfly (FireBug等效版)捆绑在一起,我已经了解它也可以动态编辑JavaScript。无论如何,如果他们没有时间包括它,那至少是一个特色。

查看 Firebug

正如其他人所提到的,Firebug允许您在JavaScript中设置断点(尽管我的JavaScript在HTML文档中而不是外部文件时遇到断点并没有取得很大成功)这会中断执行运行期间的一个函数。

它还允许您查看DOM对象和所有属性(包括您的JavaScript变量)。

还有一个 Lite版本的Firebug 可以在非Firefox浏览器中使用。

Mozdev有一个名为 MozREPL 的工具。您不仅可以动态更改和重新定义代码,还可以访问基础浏览器代码。真的很酷。

它在yoru计算机上打开了一个端口amnmd allwos你连接一个telnet会话(仅从本地主机)到它开始执行代码。您也可以将该端口打开到不是来自localhost的连接....(但要注意,这是非常不安全和危险等等。)

它带有一个emacs次要模式,可让您将各种文本区域发送到mozdev,并提供非常好的交互模式。我进一步扩展它以直接从emacs设置Firebug断点,并启动selenium测试。基本上我可以从我的编辑器编写我的浏览器脚本。它太酷了。在某个时刻,我将很快发布源代码。

JavaScript有一个 eval ()函数,你可以构建你的字符串然后跑吧。

<script type="text/javascript" language="javascript">
  example = function() {alert('first');}
  example();
  eval("example = function() {alert('second');}");
  example();
</script>

上面的代码是eval如何用于更改现有代码的示例。

@eyelidlessness,这表明您可以更改现有代码。您对该问题的编辑澄清了原始问题,但因此我的答案看起来很简单,但在最初发布时它是一个有效点,原始海报本应该使问题更清楚。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top