javascript,严格模式,断点对结果有影响吗?

标签 javascript

我的代码:

'use strict';
var foo=function(){
    alert(this);
}
var bar = {
    baz:foo,
};
var x = bar.baz;
x();//1

当我直接执行时,一切正常,警告undefined。当我在 (1) 处插入断点时,按 F11 两次,提示 window

谁能解释一下?非常感谢。

最佳答案

我创建了 jsfiddle并检查它。我在 1 中添加了断点,当我使用 F11 console.logalert 时(我更改了 alert 以登录最后一个示例)告诉我 undefined...但随后我在断点处停止并在浏览器开发工具控制台中调用 x() 结果是 Mac OS X/Chrome 最新版本中的作用域对象,结果是 undefined 适用于 Mac OS X/Firefox las 版本。

因此在开发工具控制台等非标准线程中执行的结果是不同的,与javascript语言无关。

关于javascript,严格模式,断点对结果有影响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21085262/

相关文章:

javascript - 用js Bootstrap 检查/取消检查多个元素

javascript - 如何使用 javascript 和 css 从选择框选项中删除焦点

javascript - 使用react和webpack : use the non-minified dev environment

php - 如何根据另一个文本框的值使用 jQuery 自动完成文本框

javascript - 在一个函数中验证多个表单域

javascript - 将 IIFE 模块转换为 RollupJS 可导入的模块

JavaScript 对象和 jQuery

javascript - 使用 Javascript 选择菜单 onChange DIV 元素

JavaScript:接受除法函数作为另一个返回新函数的函数的参数 --> 返回商

javascript - 单击链接时添加新的下拉列表