Heim > Web-Frontend > js-Tutorial > Hauptteil

Zusammenfassung von Beispielen für verschiedene Möglichkeiten zum Erstellen benutzerdefinierter Objekte in Javascript

伊谢尔伦
Freigeben: 2017-07-27 17:01:47
Original
1610 Leute haben es durchsucht

Objektkonstruktor/Objektliteral :

Lassen Sie das Entwurfsmuster beiseite und verwenden Sie die einfachste Methode, bei der zunächst der Objektkonstruktor aufgerufen wird, um ein zu erstellen

var student = new Object();
     student.name = "xiao ming";
     student.age = 20;
     student.getName = function () {
         alert(this.name);
     }
Nach dem Login kopieren

Schüler, die mit JavaScript-Objektliteralen vertraut sind, können zu einer besseren Schreibweise wechseln, die zumindest prägnanter aussieht.

 var student = {
        name: "xiao hong",
        age: 18,
        getName: function () {
            alert(this.name);
        }
    };
Nach dem Login kopieren

Nachteile: Ein Nachteil der oben genannten Methode besteht darin, dass bei Verwendung derselben Schnittstelle zum Erstellen vieler ähnlicher Objekte viel doppelter Code generiert wird. Dies sollte leicht zu verstehen sein. Funktionen (Methoden oder Klassen) werden im Allgemeinen zum Erstellen öffentlicher Methoden verwendet. Der obige Objekterstellungsprozess weist überhaupt keinen Schatten von Funktionen auf, sodass keine Wiederverwendung erfolgt.

Konstruktor eines benutzerdefinierten Typs:

Der Konstruktor kann zum Erstellen von Objekten bestimmter Typen verwendet werden.

  function Student(name,age) {
         this.name = name;
         this.age = age;
         this.sayName = function () {
             alert(this.name);
         }
     }
     var p3 = new Student("ming", 20);
     var p4 = new Student("hong", 18);
     alert(p3 instanceof Student); 
    alert(p3.sayName==p4.sayName); //false
Nach dem Login kopieren

Nachteile: Der Nachteil benutzerdefinierter Konstruktoren besteht darin, dass jedes Objekt seine eigene Methode neu erstellt. Tatsächlich sind die Funktionen dieser Methoden dieselben (wie sayName), aber sie sind nicht dieselben (S. 3). .sayName und p4.sayName sind nicht gleich).

Die Kombination aus Konstruktor und Prototyp:

     function Student(name, age, friends) {
         this.name = name;
         this.age = age;
         this.friends = friends;
     }
     Student.prototype = {
         constructor: Student,
         sayName: function () {
             alert(this.name);
         }
     };
Nach dem Login kopieren

Zusammenfassung: Die Kombination aus Konstruktor und Prototyp ist eine weithin anerkannte Methode zum Erstellen benutzerdefinierter Typen. Es ist auch die beste Methode unter den oben genannten Methoden.

Das obige ist der detaillierte Inhalt vonZusammenfassung von Beispielen für verschiedene Möglichkeiten zum Erstellen benutzerdefinierter Objekte in Javascript. 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