聘我网

新概念招聘3.0

firebug的怪异问题

vote up0vote downstar

在firebug的console里面运行这段代码:

if(!nosuchvariable)alert(1);

会直接报错,而如果在页面里执行到了这段代码,则会弹出alert对话框,这是为何?

 

1 个答复

vote up0vote downcheck

这是firebugbug,或者说是不足之处,subtlety

当碰到一个当前scope未定义的变量时,它搜索window这个scope下面是否有这个属性,如果没的话就会抛出错误,而实际上应该返回false就好了

更新

当在firebug运行alert(wtf)时, 实际执行的代码如下:

with( window ) { alert(wtf); }

而这个with语句会直接抛error。。。

链接

您的回答





不是您要找的问题? 浏览其他含有标签 的问题或者 自己问个.