Objekt und Objektkonstruktoren in JavaScript?
In der lebendigen Welt der objektorientierten Programmierung kennen wir bereits die Bedeutung von Klassen und Objekten, aber im Gegensatz zu anderen Programmiersprachen hat JavaScript nicht die traditionellen Klassen wie in anderen Sprachen. Aber JavaScript hat Objekte und Konstruktoren, die größtenteils auf die gleiche Weise funktionieren, um die gleiche Art von Operationen durchzuführen.

  • Konstruktoren sind allgemeine JavaScript-Funktionen, die mit dem Schlüsselwort „new“ verwendet werden. Es gibt zwei Arten von Konstruktoren in JavaScript, nämlich eingebaute Konstruktoren (Array und Objekt) und benutzerdefinierte Konstruktoren (Eigenschaften und Methoden für bestimmte Objekte definieren).
  • Konstruktoren können nützlich sein, wenn wir eine Möglichkeit benötigen, einen Objekt-„Typ“ zu erstellen, der mehrfach verwendet werden kann, ohne das Objekt jedes Mal neu definieren zu müssen. Es ist eine Konvention, den Namen von Konstruktoren groß zu schreiben, um sie von regulären Funktionen zu unterscheiden.

Betrachten Sie zum Beispiel den folgenden Code:

function Automobile(color) { this.color=color;}var vehicle1 = new Automobile ("red");

Die Funktion „Automobile()“ ist ein Objektkonstruktor, und seine Eigenschaften und Methoden, z.B. „Farbe“, werden darin deklariert, indem das Schlüsselwort „this“ vorangestellt wird. Objekte, die mit einem Objektkonstruktor definiert werden, werden dann mit dem Schlüsselwort „new“ zu Instanzen gemacht.

Wenn new Automobile() aufgerufen wird, tut JavaScript zwei Dinge:

  1. Es erstellt ein neues Objekt (Instanz) Automobile() und weist es einer Variablen zu.
  2. Es setzt die Konstruktoreigenschaft „Farbe“ des Objekts auf Automobile.

Methode Object.create()
Object.create() wird verwendet, um ein neues Objekt mit dem angegebenen Prototyp und den Eigenschaften zu erstellen. Die Methode Object.create() gibt ein neues Objekt mit dem angegebenen Prototypobjekt und den Eigenschaften zurück.

Anwendungen:

  • Object.create() wird zur Implementierung der Vererbung verwendet.

Syntax:

Object.create(prototype)

Verwendete Parameter:

  1. prototype :
  2. Es ist das Prototyp-Objekt, aus dem ein neues Objekt erstellt werden soll.

  3. propertiesObject : Dies ist ein optionaler Parameter. Er gibt die aufzählbaren Eigenschaften an, die dem neu erstellten Objekt hinzugefügt werden sollen.

Rückgabewert:
Object.create() gibt ein neues Objekt mit dem angegebenen Prototyp-Objekt und den Eigenschaften zurück.

Beispiele für die obige Funktion sind unten angegeben.

Beispiele:

Erläuterung: In diesem Beispiel gibt es zwei Funktionen „fruits“ und „apple“.Eine neue Instanz von apple wird erstellt, die als „app“ bezeichnet wird und mit dem Prototyp und der Eigenschaft von „fruits“ angegeben wurde, d.h. this.name = ‚fruit 1‘.

Erläuterung: In diesem Beispiel gibt es zwei Funktionen „fruits“ und „apple“, und es wird eine neue Instanz von „apple“ erstellt, die „app“ heißt und mit dem Prototyp und der Eigenschaft von „fruits“ angegeben wurde, d.h. this.name = ‚fruit 1′ und this .season = ’summer‘.

Die Codes für die obige Funktion sind unten angegeben.

Code 1:



OUTPUT :

"fruit 1"

Code 2:



OUTPUT :

"fruit 1""summer"

Ausnahmen :

  • Object.create( ) Methode löst eine TypeError-Ausnahme aus, wenn der Parameter propertiesObject nicht null ist.
  • Object.create( ) Methode löst eine TypeError-Ausnahme aus, wenn der Parameter propertiesObject ein nicht primitives Objekt ist.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.