Mac*_*iek 15 javascript debugging firefox firebug scope
我们有一个非常大的JavaScript应用程序,经过几个月的编码后,不可避免地出现了几个范围滑点,其中定义变量而不使用var
以下方式的关键字:
function() {
x = 5; ...
}
Run Code Online (Sandbox Code Playgroud)
代替:
function() {
var x = 5; ...
}
Run Code Online (Sandbox Code Playgroud)
这发生在某个地方 - 我们不确定在哪里 - 并且搜索有问题的变量名称很困难,因为它是我们源代码中出现1000次的常用词.
有没有办法让Firebug在首先创建给定全局变量的行上中断?为了澄清,我想在window.x
切换undefined
到定义值的时刻和break语句中断.
我已经尝试创建一个监视表达式,并希望我可以把它变成一个断点,但我似乎无法在没有某种上下文或范围的情况下创建监视表达式.
如果使用Firebug无法做到这一点,我会对能在Firefox中完成此任务的任何事情感兴趣.
Ion*_*tan 12
提供了一些东西
这个小脚本可以解决这个问题:
<script type="text/javascript">
window.__defineSetter__("x", function(value) { console.trace(); });
x = 1;
</script>
Run Code Online (Sandbox Code Playgroud)
在分配之前,您将获得执行代码的跟踪.
它可能无法报告某些情况,因此请查看JSLint.将所有JS文件加载到那里并将它们拖放.
归档时间: |
|
查看次数: |
2250 次 |
最近记录: |