Мы уже знаем о том, как создать класс в JS
Теперь можно приступить и к наследованию. Создадим такой класс (он будет выступать в качестве родителя):
Теперь создадим потомка:
А теперь наследуем:
Ещё, возможно, кому-то будет удобно создать функцию, которая будет создавать наследование. Например, такую:
Теперь просто вызываем её:
Теперь у нас есть универсальная функция, которая может любому классу сопоставить другой класс с помощью отношений родитель-потомок.
Спасибо за внимание.
Теперь можно приступить и к наследованию. Создадим такой класс (он будет выступать в качестве родителя):
1 2 3 4 | var Fruit=function(){ this.name="какой-то фрукт"; this.type="фрукт";} |
1 2 3 | var Banana=function(){ this.name="банан";} |
1 2 3 4 | Banana.prototype=new Fruit; var banana=new Banana();alert("Название:"+banana.name+", тип:"+banana.type); |
1 2 3 4 5 6 7 8 9 | function extend(arg){ if(arg.child && arg.parent){ arg.child.prototype = new arg.parent; arg.child.prototype.constructor = arg.child; arg.child.superclass = arg.parent.prototype; }else{ alert("Ошибка аргументов"); }}; |
1 2 3 4 5 6 7 8 9 10 11 12 | var Fruit=function(){ this.name="какой-то фрукт"; this.type="фрукт";};var Banana=function(){ this.name="банан";}; extend({child:Banana, parent:Fruit}); var banana=new Banana;alert("Название:"+banana.name+", тип:"+banana.type); |