JavaScript Factory Functions

samenvatting: in deze tutorial leert u over de JavaScript factory functies die functies zijn die objecten retourneren.

Inleiding tot de factory functies in JavaScript

een factory functie is een functie die een nieuw object retourneert. Het volgende maakt een persoon object met de naam john:

Code language: JavaScript (javascript)

uitvoer:

het object john heeft twee eigenschappen: firstName en lastName, en één methode getFullName() die de volledige naam retourneert.

stel dat u een ander soortgelijk object genaamd jane moet maken, dan kunt u de code als volgt dupliceren:

Code language: JavaScript (javascript)

uitvoer:

het jane object heeft dezelfde eigenschappen en methode als het john object.

hoe meer object u wilt maken, hoe meer dubbele code u moet kopiëren.

om te voorkomen dat dezelfde code steeds opnieuw wordt gekopieerd, kunt u een functie ontwikkelen die het person – object maakt:

Code language: JavaScript (javascript)

wanneer een functie Een object creëert, wordt het een fabrieksfunctie genoemd. createPerson() is een fabrieksfunctie omdat het een nieuw person object retourneert.

de volgende code gebruikt de functie createPerson() factory om twee objecten john te maken en jane:

Code language: JavaScript (javascript)

met de functie factory kunt u een willekeurig aantal van de person objecten aanmaken zonder code te dupliceren.

wanneer u een object maakt, heeft dat object een ruimte in het geheugen nodig. Als u duizend person objecten hebt, hebt u duizend spaties in het geheugen nodig om deze objecten op te slaan. Deze persoonsobjecten hebben echter dezelfde getFullName() methode.

om Te voorkomen dat het herhalen van dezelfde getFullName() – functie in het geheugen, kunt u de getFullName() methode van person object:

Code language: JavaScript (javascript)

En deze methode aan een ander object:

Code language: JavaScript (javascript)

En voordat u de getFullName() methode op de person object, kunt u de methode van de behavior object naar de person object als volgt:

Code language: JavaScript (javascript)

Het zal moeilijker als je veel methoden en toewijzen deze handmatig.

dit is de reden waarom de Object.create() methode in het spel komt.

Het Object.create() method

de methode Object.create() maakt een nieuw object aan met behulp van een bestaand object als prototype van het nieuwe object:

Code language: CSS (css)

dus u kunt de Object.create() als volgt gebruiken:

Code language: JavaScript (javascript)

nu kunt u person objecten maken en de methoden van het behavior object aanroepen:

Code language: JavaScript (javascript)

de code werkt prima. In de praktijk ziet u echter zelden de fabrieksfuncties. In plaats daarvan ziet u de functie constructeurs of de klassen.

samenvatting

  • een fabrieksfunctie is een functie die een nieuw object retourneert.
  • gebruik Object.create() om een object te maken met behulp van een bestaand object als prototype.
  • was deze tutorial nuttig ?
  • YesNo

You might also like

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.