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