Heim > Web-Frontend > js-Tutorial > Welche Möglichkeiten gibt es, Objekte in Javascript zu erstellen?

Welche Möglichkeiten gibt es, Objekte in Javascript zu erstellen?

青灯夜游
Freigeben: 2023-01-07 11:41:23
Original
3655 Leute haben es durchsucht

Erstellungsmethode: 1. Verwenden Sie die Anweisung „var object name = {property name 1: value 1, property name 2: value 2,...};“ ;“-Anweisung; 3. Verwenden Sie die Anweisung „Object.create (Prototypobjekt, Deskriptoren)“.

Welche Möglichkeiten gibt es, Objekte in Javascript zu erstellen?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

Es gibt drei Möglichkeiten, Objekte in JavaScript zu erstellen:

  • Objektliterale

  • Objekte erstellen

  • Verwenden Sie Object.create

Object.literals

Verwenden Sie direkte Mengen. Objekte können sein schnell erstellt und sind die effizienteste und einfachste Möglichkeit. Die spezifische Verwendung ist wie folgt:

var objectName = {
    属性名1 : 属性值1,
    属性名2 : 属性值2,
    ...
    属性名n : 属性值n
};
Nach dem Login kopieren

In Objektliteralen werden der Attributname und der Attributwert durch Doppelpunkte getrennt. Der Attributwert kann ein beliebiger Datentyp sein und der Attributname kann ein JavaScript-Bezeichner oder ein Zeichenfolgenausdruck sein. Eigenschaften werden durch Kommas getrennt und am Ende der letzten Eigenschaft ist kein Komma erforderlich.

Beispiel

Der folgende Code verwendet Objektliterale, um zwei Objekte zu definieren.

var o = {  //对象直接量
    a : 1,  //定义属性
    b : true  //定义属性
}
var o1 = {  //对象直接量
    "a" : 1,  //定义属性
    "b" : true  //定义属性
}
Nach dem Login kopieren

Objekte konstruieren

Verwenden Sie den neuen Operator, um den Konstruktor aufzurufen, um ein Instanzobjekt zu erstellen. Die spezifische Verwendung ist wie folgt:

var objectName = new functionName(args);
Nach dem Login kopieren

Die Parameterbeschreibung lautet wie folgt:

  • objectName: das zurückgegebene Instanzobjekt.

  • Funktionsname: Konstruktor, im Grunde derselbe wie eine gewöhnliche Funktion, muss jedoch keinen Rückgabewert zurückgeben und gibt ein Instanzobjekt zurück, auf das im Voraus innerhalb der Funktion zugegriffen werden kann.

  • args: Liste der Konfigurationsparameter für die Initialisierung des Instanzobjekts.

Beispiel

Das folgende Beispiel definiert verschiedene Instanzen mit unterschiedlichen Konstruktortypen.

var o = new Object();  //定义一个空对象
var a = new Array();  //定义一个空数组
var f = new Function();  //定义一个空函数
Nach dem Login kopieren

Verwenden Sie Object.create

Object.create ist eine neue statische Methode in ECMAScript 5, die zum Erstellen eines Instanzobjekts verwendet wird. Diese Methode kann den Prototyp und die Objekteigenschaften des Objekts angeben. Die spezifische Verwendung lautet wie folgt:

Object.create(prototype, descriptors)
Nach dem Login kopieren

Die Parameterbeschreibung lautet wie folgt:

  • prototype: ein erforderlicher Parameter, der das Prototypobjekt angibt, das null sein kann.
  • descriptors: Optionaler Parameter, ein JavaScript-Objekt, das einen oder mehrere Eigenschaftsdeskriptoren enthält. Der Eigenschaftsdeskriptor enthält Dateneigenschaften und Zugriffseigenschaften, wobei die Dateneigenschaften im Folgenden beschrieben werden.
  • Wert: Geben Sie den Attributwert an.
  • beschreibbar: Der Standardwert ist false und legt fest, ob der Attributwert beschreibbar ist.
  • enumerable: Der Standardwert ist false. Legen Sie fest, ob die Eigenschaft aufzählbar ist (for/in).
  • konfigurierbar: Der Standardwert ist „false“, legt fest, ob Attributmerkmale geändert und Attribute gelöscht werden können.

Die Accessor-Funktion enthält zwei Methoden, eine kurze Beschreibung lautet wie folgt:

  • set(): Setzt den Attributwert.

  • get(): Gibt den Attributwert zurück.

Beispiel

Das folgende Beispiel verwendet Object.create, um ein Objekt zu definieren, erbt null und enthält zwei aufzählbare Attribute, Größe und Form, mit den Attributwerten „groß“ bzw. „rund“.

var newObj = Object.create (null, {
    size : {  //属性名
        value : "large",  //属性值
        enumerable : true  //可以枚举
    },
    shape : {  //属性名
        value : "round",  //属性值
        enumerable : true  //可以枚举
    }
});
console.log(newObj.size);  //large
console.log(newObj.shape);  //round
console.log(Object.getPrototypeOf(newObj));  //null
Nach dem Login kopieren

【Verwandte Empfehlungen: Javascript-Lern-Tutorial

Das obige ist der detaillierte Inhalt vonWelche Möglichkeiten gibt es, Objekte in Javascript zu erstellen?. 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