http://msdn.microsoft.com/en-us/magazine/ff696765.aspx怎么做原型的JavaScript实现私有变量工作
这个网站展示了一个例子
function Circle(radius) {
this.getRadius = function() {
return radius;
};
this.setRadius = function(value) {
if (value < 0) {
throw new Error('radius should be of positive value');
}
radius = value;
};
}
VS
Circle.prototype.getRadius = function() {
return this._radius;
};
Circle.prototype.setRadius = function(value) {
if (value < 0) {
throw new Error('radius should be of positive value');
}
this._radius = value;
};
,并在页面上它指出
“不过,在这种情况下,我们失去了拥有真正的私人成员的奢侈,并且拥有采用其他方式,例如通过公约表示隐私(强调的财产名称)。它通常归结为在有真正的私人成员还是有更高效的实施之间作出选择。“
如何使用原型this._失去”真正的私人“成员的奢侈品?,prototype.this没有考虑作为参考,以自我?
我c,所以没有办法做一个实例变量没有使用这个关键字this._radius,如果你做var _radius,它不会做什么? – user2167582
必须在此上定义Nope实例变量。 var _radius是定义函数的本地变量。 –