JavaScript Factory-Funktionen

Zusammenfassung: In diesem Tutorial erfahren Sie mehr über die JavaScript Factory-Funktionen, bei denen es sich um Funktionen handelt, die Objekte zurückgeben.

Einführung in die Factory-Funktionen in JavaScript

Eine Factory-Funktion ist eine Funktion, die ein neues Objekt zurückgibt. Folgendes erstellt ein Person-Objekt mit dem Namen john:

Code language: JavaScript (javascript)

Ausgang:

Das john -Objekt hat zwei Eigenschaften: firstName und lastName und eine Methode getFullName(), die den vollständigen Namen zurückgibt.

Angenommen, Sie müssen ein anderes ähnliches Objekt mit dem Namen jane erstellen, können Sie den Code wie folgt duplizieren:

Code language: JavaScript (javascript)

Ausgang:

Das jane -Objekt hat die gleichen Eigenschaften und Methoden wie das john -Objekt.

Je mehr Objekte Sie erstellen möchten, desto mehr Duplikatcode müssen Sie kopieren.

Um zu vermeiden, dass derselbe Code immer wieder kopiert wird, können Sie eine Funktion entwickeln, die das person -Objekt erstellt:

Code language: JavaScript (javascript)

Wenn eine Funktion ein Objekt erstellt, wird sie als Factory-Funktion bezeichnet. Die createPerson() ist eine Factory-Funktion, da sie ein neues person -Objekt zurückgibt.

Der folgende Code verwendet die createPerson() Factory-Funktion, um zwei Objekte john und jane:

Code language: JavaScript (javascript)

Mit der Factory-Funktion erstellen Sie eine beliebige Anzahl der gewünschten person -Objekte, ohne Code zu duplizieren.

Wenn Sie ein Objekt erstellen, benötigt dieses Objekt einen Speicherplatz im Speicher. Wenn Sie tausend person Objekte haben, benötigen Sie tausend Leerzeichen im Speicher, um diese Objekte zu speichern. Diese person-Objekte haben jedoch die gleiche getFullName() -Methode.

Um zu vermeiden, dass dieselbe getFullName() -Funktion im Speicher wiederholt wird, können Sie die getFullName() -Methode aus dem person -Objekt entfernen:

Code language: JavaScript (javascript)

Und verschieben Sie diese Methode in ein anderes Objekt:

Code language: JavaScript (javascript)

Und bevor Sie die getFullName() -Methode für das person -Objekt aufrufen, können Sie die Methode des behavior -Objekts dem person -Objekt wie folgt zuweisen:

Code language: JavaScript (javascript)

Schwieriger wird es, wenn Sie viele Methoden haben und diese manuell zuweisen müssen.

Deshalb kommt die Object.create() Methode ins Spiel.

Das Objekt.create() -Methode

Die Object.create() -Methode erstellt ein neues Objekt unter Verwendung eines vorhandenen Objekts als Prototyp des neuen Objekts:

Code language: CSS (css)

Sie können also den Object.create() wie folgt verwenden:

Code language: JavaScript (javascript)

Jetzt können Sie person -Objekte erstellen und die Methoden des behavior -Objekts aufrufen:

Code language: JavaScript (javascript)

Der Code funktioniert einwandfrei. In der Praxis werden Sie die werkseitigen Funktionen jedoch selten sehen. Stattdessen sehen Sie die Funktionskonstruktoren oder die Klassen.

Zusammenfassung

  • Eine Factory-Funktion ist eine Funktion, die ein neues Objekt zurückgibt.
  • Verwenden Sie Object.create(), um ein Objekt mit einem vorhandenen Objekt als Prototyp zu erstellen.
  • War dieses Tutorial hilfreich ?
  • JaNein

You might also like

Schreibe einen Kommentar

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