我的代码:
'use strict';
var foo=function(){
alert(this);
}
var bar = {
baz:foo,
};
var x = bar.baz;
x();//1当我直接执行时,一切都很好,提醒undefined。当我在(1)处插入断点时,按F11两次,提醒window。
有人能解释吗?非常感谢。
发布于 2014-01-13 07:01:11
我创建小提琴并检查它。我在1中添加了断点,当我使用F11 console.log或alert (我更改了警报以登录最后一个示例)时,向我显示undefined...But,然后在断点处停下来,调用浏览器开发工具控制台x(),结果是Mac / Chrome上一个版本中的scope对象,而Mac / Firefox版本的结果是undefined。
因此,在无标准线程(如dev tools控制台)中执行的结果是不同的,并且与javascript语言无关。
https://stackoverflow.com/questions/21085262
复制相似问题