Heim > Web-Frontend > js-Tutorial > Hauptteil

Teilen Sie verschiedene Möglichkeiten zum Erstellen von Objekten in JS

小云云
Freigeben: 2018-03-13 18:04:21
Original
1439 Leute haben es durchsucht

Dieser Artikel stellt Ihnen hauptsächlich verschiedene Möglichkeiten zum Erstellen von Objekten in JS vor und hofft, Ihnen dabei zu helfen.

1. Verwenden Sie native Konstruktoren, um Objekte bestimmter Typen zu erstellen

  var person =new Object();
    person.name="wangwu";
    person.age="20";
    person.sayName=function(){
    alert(this.name);
}
Nach dem Login kopieren

2. Verwenden Sie Objektliterale

var person = {
    name:"wangwu",
    age:"20",
    sayName: function(){
        alert(this.name);
    }
}
Nach dem Login kopieren

Zusammenfassung: Beide Methoden können zum Erstellen eines einzelnen Objekts verwendet werden, haben jedoch offensichtliche Nachteile. Die Verwendung derselben Schnittstelle zum Erstellen vieler Objekte führt zu einer Menge doppeltem Code.

3. Verwenden Sie das Factory-Muster

function createPerson(name,age){
    var o=new Object();
    o.name=name;
    o.age=age;
    o.sayName=function(){
            alert(this.name);
    };
    return o;
}
var person1=createPerson("wangwu",20);
Nach dem Login kopieren

Abstrahiert den Prozess der Erstellung spezifischer Objekte, erfindet eine Funktion und verwendet die Funktion, um die Erstellung zu kapseln spezifischer Schnittstellen Objektdetails.

4. Konstruktormuster

function  Person(name,age){
    this.name=name;
    this.age=age;
    this.sayName=function(){
        alert(this.name);
    };
}
var person1=new Person("wangwu",20);
Nach dem Login kopieren

Erstellen Sie einen benutzerdefinierten Konstruktor, um die Eigenschaften und Methoden des benutzerdefinierten Objekttyps zu definieren.

5. Prototyp-Modus

function Person(){
}
Person.prototype.name="wangwu";
Person.prototype.age=20;
Person.prototype.sayName=function(){
    alert(this.name);
}
var person1=new Person();
person1.sayName(); //wangwu
Nach dem Login kopieren

Jede Funktion, die wir erstellen, hat ein Prototyp-Attribut, das ein Zeiger ist, der auf ein Objekt zeigt. Und der Zweck dieses Objekts ist um Eigenschaften und Methoden zu enthalten, die von allen Instanzen eines bestimmten Typs gemeinsam genutzt werden können. Der Nachteil des Prototypmusters besteht darin, dass der Schritt der Übergabe von Initialisierungsparametern an den Konstruktor weggelassen wird. Daher erhalten alle Instanzen standardmäßig die gleichen Attributwerte Referenztypwerte. Das Problem ist stärker ausgeprägt.

6. Kombinierte Verwendung von Konstruktormuster und Prototypmuster

function Person(name,age){
    this.name=name;
    this.age=age;
    this.friends=["wangwu","zhangsan"];
}
Person.prototype={
    constructor:Person,
    sayName:function(){
        alert(this.name);
    }
}
var person1=new Person("wangwu",20);
var person2=new Person("zhangsan",23);
person1.friends.push("lisi");
alert(person1.friends); //"wangwu,zhangsan,lisi"
alert(person2.friends); //"wangwu,zhangsan"
Nach dem Login kopieren

7. Dynamisches Prototypmuster

  function Person(name,age,job){
        //属性
    this.name=name;
    this.age=age;
    this.job=job;
//方法
if(typeof this.sayName!="function"){
    person.prototype.sayName=function(){
            alert(this.name);
    };
}
}
var  friend=new Person("wangwu",20);
friends.sayName();
Nach dem Login kopieren

8. Parasitäres Konstruktormuster

function Person(name,age){
    var 0=new Object();
    o.name="wangwu";
    o.age=20;
    o.sayName=function(){
        alert(this.name);
    };
    return o;
}
var friend=new Person("wangwu",20);
friend.sayName(); //"wangwu"
Nach dem Login kopieren

9. Stabiles Konstruktormuster

function Person(name,age,job){
    //创建要返回的对象
    var  o=new Object();
    //可以在这里定义私有变量和函数
    //添加方法
    o.sayName=function(){
        alert(name);
    };
//返回对象
return o;
}
var friend=Person("wangwu",20);
friend.sayName();  //"wangwu"
Nach dem Login kopieren

Verwandte Empfehlungen:

Eine Zusammenfassung der Methoden zum Erstellen von Objekten in js (Beispielcode)

Mehrere Möglichkeiten zum Erstellen von Objekten in js

So erstellen Sie Objekte in js Zusammenfassung mehrerer häufig verwendeter Methoden (empfohlen)_js objektorientiert

Das obige ist der detaillierte Inhalt vonTeilen Sie verschiedene Möglichkeiten zum Erstellen von Objekten in JS. 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