我无法获取这段代码,以了解为什么ClassA方法会分配给ClassB。具体来说,我无法理解ClassB中前两行代码的继承行为。对象伪装在Javascript中如何工作
function ClassA(sColor) {
this.color = sColor;
this.sayColor = function() {
alert(this.color);
};
this.sayColor1 = function() {
alert("hi");
};
}
function ClassB(sColor, sName) {
this.newMethod = ClassA;
this.newMethod(sColor);
delete this.newMethod;
this.name = sName;
this.sayName = function() {
alert(this.name);
};
}
var objA = new ClassA('red');
var objB = new ClassB('blue', 'Nicholas');
objA.sayColor();
objB.sayColor();
objB.sayColor1();
objB.sayName();
你应该在JS –
了解_prototype_也关于_this_关键字 – Grundy
有关在JavaScript中使用OOP的良好介绍,请参阅[使用对象](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects)。 – Oka