我想在js中使用继承概念,所以我所做的是
function myGarage(x) {
var _x = x;
Object.defineProperty(this, "BenZ", {
get: function () {
return _x;
},
set: function (value) {
_x = value;
},
enumerable: true,
configurable: true
});
}
myGarage.prototype = new MyCar();
function MyCar() {
var _x =0;
Object.defineProperty(this, "Audi", {
get: function () {
return _x;
},
set: function (value) {
_x = value;
},
enumerable: true,
configurable: true
});
}
在此之后,我在那里创建了实例myGarage
。
var g1 = new myGarage(true);
var g2 = new myGarage(false);
var g3 = new myGarage("null");
这里的问题是当我设置奥迪的g1.Audi = 10;
所有其他实例时将保存样本值myGarage
(例如)
g1.Audi = 10;
var a = g2.Audi // a is 10
var b = g3.Audi; // b is 10
但我将值设置为 g1。
我需要的是其他实例必须保持默认值或未定义