Heim > Web-Frontend > js-Tutorial > Hauptteil

Zusammenfassung der Vererbungsmethoden in JS (mit Groß-/Kleinschreibung)

php中世界最好的语言
Freigeben: 2018-06-04 17:22:25
Original
1649 Leute haben es durchsucht
Prototypkettenvererbung

Kern: Verwenden Sie die Instanz der übergeordneten Klasse als Prototyp der Unterklasse
Eigenschaften:
1: Sehr reine Vererbungsbeziehung, die Instanz ist die Unterklasse Eine Instanz von ist auch eine Instanz der übergeordneten Klasse
2: Die übergeordnete Klasse fügt eine neue Prototypmethode hinzu, auf die die Unterklassen zugreifen können
Nachteile:
1: Wenn Sie hinzufügen möchten Attribute und Methoden müssen der Unterklasse hinzugefügt werden. Nach new Animal() kann keine Mehrfachvererbung realisiert werden
2: Beim Erstellen einer Unterklasseninstanz können keine Parameter an den Konstruktor der übergeordneten Klasse übergeben werden

function Animal(name){
    this.name=name;
    this.sleep=function(){
        console.log(this.name+"正在睡觉");
    }
}
Animal.prototype.eat=function() {
    console.log(this.name + "正在吃");
}
function Cat(){
}
Cat.prototype=new Animal();
Cat.prototype.name="猫";
var cat=new Cat();
console.log(cat.name);
console.log(cat.sleep());
console.log(cat.eat());
console.log(cat instanceof Cat);//true
console.log(cat instanceof Animal);//true
Nach dem Login kopieren

Konstruktionsvererbung
Kern: Verwendung Der Konstruktor der übergeordneten Klasse erweitert die Instanz der untergeordneten Klasse, was dem Kopieren der Instanzattribute der übergeordneten Klasse in die untergeordnete Klasse entspricht (es wird kein Prototyp verwendet)
Funktionen:
1: Beim Erstellen einer Unterklasseninstanz können Sie Parameter an die übergeordnete Klasse übergeben
2: Mehrfachvererbung kann erreicht werden
Nachteile:
1: Die Instanz ist keine Instanz der übergeordneten Klasse. aber eine Instanz der Unterklasse
2: Nur die Attribute und Methoden der übergeordneten Klasse können geerbt werden, und Prototypattribute können nicht vererbt werden. Und Methode
3: Die Wiederverwendung von Funktionen kann nicht erreicht werden Die Instanzfunktion der übergeordneten Klasse, die sich auf die Leistung auswirkt ist eine neue Unterklasse () oder Unterklasse (), das zurückgegebene Objekt hat den gleichen Effekt
Nachteile:

Instanzen sind Instanzen der übergeordneten Klasse, keine Unterklassen. Instanzen von

unterstützen keine Mehrfachvererbung kombinierte Vererbung

    function Animal(name){
            this.name=name;
            this.sleep=function(){
                console.log(this.name+"正在睡觉");
            }
        }
        Animal.prototype.eat=function() {
            console.log(this.name + "正在吃");
        }
                function Cat(name){
                Animal.call(this);
                this.name=name;
        }
        var cat=new Cat("猫");
        console.log(cat.name);
        console.log(cat.sleep());
//        console.log(cat.eat());不能继承原型化方法
        console.log(cat instanceof Cat);//true
        console.log(cat instanceof Animal);//false
Nach dem Login kopieren

Sonstiges:
1: Formularvalidierung
Beitrag wird sicher übermittelt und stellt keine Informationen offen
get wird Informationen offenlegen
2: Browserobjekt3: Navigator enthält Informationen über den Browser. navigator.appName gibt den Browsernamen zurück4: Die Attribute der gekapselten Klasse können angepasst werden, und der Name wird angepasst

Ich glaube, Sie haben die Methode danach gemeistert Lesen Sie den Fall in diesem Artikel. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:


So binden Sie die Richtungstasten, um die Div-Bewegung zu steuern

Wie Sie beim Klicken auf den Schriftartwechseleffekt erzielen der Titeltext

Das obige ist der detaillierte Inhalt vonZusammenfassung der Vererbungsmethoden in JS (mit Groß-/Kleinschreibung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage