在往上查到构造函数因为没有创建新的对象所有其中this指向的是window对象,但是我在使用es6的模块加载export default引用一个构造方法的时候 在执行过程中在页面打断点提示的this表示undefined如下图但是相同的文件 不用使用es6的模块引用 直接用cdn引用的时候就没有问题,this的确表示window对象 我很费解这个问题 如果有大神知道原理请给我解惑 谢谢
1 回答
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
1.严格模式下, 函数当做普通函数调用的时候 this 是指向 undefined
以对于一个开启严格模式的函数,指定的this不再被封装为对象,而且如果没有指定this的话它值是undefined
参考: 严格模式
2: 当使用了 es6 的 modules 的时候会自动开启严格模式, 而不用显示声明. 如果是用一些打包工具的话, 你会看到打包出来的 JS 前面加了 'use strict';
参考:ES6 modules
添加回答
举报
0/150
提交
取消