Самый простой способ реализации наследования JavaScript - это метод вызовов (или метод применения) и метод прототипа цепи, но оба метода имеют недостатки, а их смесь является хорошим методом реализации наследования. Вот примеры:
Кода -копия выглядит следующим образом:
Функция животного (возраст) {
this.age = возраст;
}
Animal.prototype.sayage = function () {
window.alert ("Мой возраст"+this.age+"!");
};
Функция собака (возраст, имя) {
Animal.call (это, возраст);
this.name = name;
}
Dog.prototype = new Animal ();
Dog.prototype.sayname = function () {
window.alert ("Я"+this.name+"!");
};
var dog = новая собака (15, "собака");
Dog.sayname ();
Dog.sayage ();
Для классового животного у него есть полевой атрибут и атрибут функции. Определение метода Sayage использует метод прототипа. Класс собак должен наследовать животное, и его полевые атрибуты также имеют название в дополнение к возрасту. Через Animal.call (это, возраст); Собака может унаследовать полевой атрибут животного и инициализировать его. Первым параметром метода вызова является указатель на унаследованный класс, а второй параметр - параметр конструктора класса животных. Фактически, наследование может быть достигнуто с помощью метода вызова, но единственное требование состоит в том, что атрибуты функции родительского класса должны быть определены в конструкторе, что не подходит для атрибутов функции, которые должны быть определены в прототипе (определение атрибутов функции в прототипе является более интуитивным, чем определение в конструкторе). Чтобы унаследовать атрибуты функции, определенные прототипом животного, требуемым утверждением является «Dog.prototype = new Animal ();». Функция sayname () в классе собаки является его собственным атрибутом функции.
В дополнение к этому наиболее классическому способу реализации наследования, в настоящее время доступны бесплатные библиотеки. Но когда вы думаете обо всех видах библиотек, вы будете очень огромными. Давайте изучим это, когда у вас будет время и вам нужно!