Сообщение от yambbkru
|
есть класс
function Obj1(c) {
this.a = c;
this.b = function() {alert(this.a);}
this.b();
}
При запуске
var myObj1 = new Obj1("1");
я хочу создать новый класс
function Obj2(c) {
this.d = c + this.a;
this.b();
}
где this.a и this.b() - это свойство и метод объекта Obj1.
А можно так связать объекты, что бы не создавать первый объект, а только взять его методы?
Не скопировать, а как то сослаться не создавая его?
|
см. красную строку
function Obj1(c) {
this.a = c;
this.b = function() {
alert(this.a);
}
this.b();
}
var myObj1 = new Obj1("1");
function Obj2(c) {
debugger
this.d = c + this.a;
this.b();
}
*!*
Obj2.prototype = myObj1;
*/!*
// создадим экземпляр второго объекта, чтобы проверить работоспособность
new Obj2('c');
выдает два алерта, в которых
1.
Сообщение от yambbkru
|
О1 = Obj1
? Как в этом случае ведут себя оба класса? Если в правый добавить свойства что будет? А если в левый? И что сделалось с прототипом?
|
тут непонятно