我正在使用带有babel-loader的Webpack,我发现这个问题:babel-loader将this
匿名自我调用函数改为undefined
而不是this
。
例如:
(function (t1, t2) {
})(this, 'test')
转换为:
(function (t1, t2) {
})(undefined, 'test');
答案 0 :(得分:4)
Babel假设每个文件都是(ES2015)模块。模块的this
在运行时具有值undefined
。要在尚不支持模块的环境中模拟正确的行为(此时每个环境),Babel会将每个顶级this
替换为undefined
。