考虑这个错误代码:
x = {
y : "why",
z : function() {
return y + " zed";
}
}
函数 z 不起作用:“ReferenceError: y is not defined”。
有没有办法从函数 z 中访问 y 而无需将其完全指定为 xy?
我当然可以将其重写为
x = function() {
var self = this;
this.y = "why";
this.z = function() {
return self.y + " zed";
};
return this;
}();
……但是天哪。