Objekt és objektumkonstruktorok JavaScriptben?
Az objektumorientált programozás élő világában már ismerjük az osztályok és objektumok fontosságát, de más programozási nyelvektől eltérően a JavaScript nem rendelkezik a más nyelvekben megszokott hagyományos osztályokkal. A JavaScriptben azonban vannak objektumok és konstruktorok, amelyek többnyire ugyanúgy működnek, és ugyanolyan típusú műveleteket hajtanak végre.

  • A konstruktorok általános JavaScript függvények, amelyeket a “new” kulcsszóval használunk. A konstruktoroknak két típusa van a JavaScriptben, azaz a beépített konstruktorok (tömb és objektum) és az egyéni konstruktorok (tulajdonságok és metódusok definiálása konkrét objektumokhoz).
  • A konstruktorok hasznosak lehetnek, amikor egy olyan objektum “típus” létrehozására van szükségünk, amely többször is használható anélkül, hogy minden alkalommal újra kellene definiálni az objektumot, és ezt az Object Constructor funkcióval lehet elérni. Konvenció, hogy a konstruktorok nevét nagybetűvel írjuk, hogy megkülönböztessük őket a hagyományos függvényektől.

Megnézzük például a következő kódot:

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

A “Automobile()” függvény egy objektumkonstruktor, és a tulajdonságait és metódusait, azaz a “színt” ezen belül a “this” kulcsszó előtaggal deklaráljuk. Az objektumkonstruktorral definiált objektumok ezután a “new” kulcsszóval instanciává válnak.

Az új Automobile() meghívásakor a JavaScript két dolgot tesz:

  1. Elkészít egy friss új objektumot (példányt) Automobile() és hozzárendeli egy változóhoz.
  2. Az objektum konstruktor tulajdonságát, azaz a “color”-t Automobile-ra állítja.

Object.create() módszer
AzObject.create() metódus egy új objektum létrehozására szolgál a megadott prototípus objektummal és tulajdonságokkal. Az Object.create() metódus egy új objektumot ad vissza a megadott prototípus objektummal és tulajdonságokkal.

Alkalmazások:

  • Az Object.create() metódus az öröklés megvalósítására szolgál.

Szintaktika:

Object.create(prototype)

Felhasznált paraméterek:

  1. prototype :
  2. Ez a prototípus objektum, amelyből egy új objektumot kell létrehozni.

  3. propertiesObject : Ez egy opcionális paraméter. Megadja az újonnan létrehozott objektumhoz hozzáadandó felsorolható tulajdonságokat.

Return Value:
Object.create() egy új objektumot ad vissza a megadott prototípus objektummal és tulajdonságokkal.

A fenti függvényre az alábbiakban találhatók példák.

Példák:

Magyarázat:

Magyarázat: Ebben a példában két függvény van, a “gyümölcsök” és az “alma”.Az alma egy új példánya jön létre, amelyet “app”-nak nevezünk el, és a “gyümölcsök” prototípusával és tulajdonságával adtuk meg, azaz this.name = ‘gyümölcs 1’.

Magyarázat: Ebben a példában két függvény van, a “gyümölcsök” és az “alma”.Az alma új példánya jön létre, amelynek neve “app”, és a “gyümölcsök” prototípusa és tulajdonsága van megadva, azaz this.name = ‘fruit 1’ és this .season = ‘summer’.

A fenti függvény kódjai az alábbiakban találhatók.

Kód 1:



KIVITEL :

"fruit 1"

Kód 2:



OUTPUT :

"fruit 1""summer"

Exceptions :

  • Object.create( ) metódus TypeError kivételt dob, ha a propertiesObject paraméter nem null.
  • Object.create( ) metódus TypeError kivételt dob, ha a propertiesObject paraméter nem primitív objektum.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.