Я хотел бы добавить метод «bar» к родительскому классу A, после, подкласс B определен, так что метод наследуется. Является ли это возможным?Javascript: Добавление метода к родительскому классу/для унаследования
Я попытался следующий код
function A() {
this.foo = function() {
console.log('foo')
}
}
function B() {
A.call(this)
}
// (trying to) add a new method to A
A.prototype.bar = function() {
console.log('bar');
}
// It works with instances of A
var a = new A()
a.foo() // ok
a.bar() // ok
// but not with an instance of B
var b = new B()
b.foo() // this works
b.bar() // not this one <------
/*
Exception: b.bar is not a function
@Scratchpad/3:17:1
*/
Любые предложения, пожалуйста?
хорошо, потому что '' Ā' и b' не являются экземплярами одного и того же класса .. –
вы можете сделать 'Object.prototype.bar = функция () {..} ', чтобы добавить его в * все * объекты, но эта кисть может быть намного шире, чем вы хотите –