【发布时间】:2016-11-28 18:26:23
【问题描述】:
我正在使用新的ES6 Classes,我很难理解为什么我可以引用this 变量是其中一种方法。
//类
class Form{
constructor(){
var self = this;
}
assemble(){
log(self);
}
}
//调用
var form = new Form();
form.assemble();
//返回
window object (not the reference to the class object)
【问题讨论】:
-
self 是 window 上一个实际存在的属性:developer.mozilla.org/en-US/docs/Web/API/Window/self 您在构造函数中将其重新定义为临时变量,然后什么也不做。在您的 assemble() 方法中,您实际上并没有引用您在构造函数中声明的 self 变量,而是在引用 window.self。
标签: javascript es6-class