во многих книгах и онлайн учебник есть примеры по передаче данных в конструктор супер-класса с помощью шаблона метода заимствования:costructors заимствования и цепи прототипов
var Parent = function(name)
{
this.name = name;
this.my_parent = "parent_property";
this.go = function()
{
alert("GO")
}
}
var Child = function(name)
{
this.name = name;
this.my_child = "child_property";
Parent.call(this);
alert(this.hasOwnProperty("go")) // HERE TRUE!!!
}
var ChildChild = function(name)
{
this.name = name;
this.su = function(){}
}
// PSEUDO CLASSICAL ECMA STANDARD
Child.prototype = new Parent("PARENT");
ChildChild.prototype = new Child("CHILD");
var c = new ChildChild("CHILDCHILD");
теперь мой вопрос: правильно ли это? в этом шаблоне свойства суперкласса копируются в ЭТО, но в системе ООП, я думаю, что эти свойства должны быть в своем суперклассе . Теперь конструктор BORROWING - это еще один шаблон, который делает вид наследования таким образом, что я не могу использовать прототип, и поэтому все свойства суперкласса цепочки - это в последний дочерний класс ... но я не думаю, что он эффективен.
Итак, в конце, как я могу передавать данные в суперкласс без этого шаблона?
Благодаря
Вы писали: «» Ребенок применить Родитель прототип на себя и, таким образом, Child.prototype клонировал свойство и методы из Родитель «» .call или .На просто использовать функцию другого объекта, переходящее в этом объекте ссылающегося поэтому я не понимаю, как прототип может работать так, как вы сказали. – xdevel2000